Android 解决屏幕上自适应问题

来源:互联网 发布:js是什么文件 编辑:程序博客网 时间:2024/05/04 10:26

本人自己写了一个屏幕中自适应的方法:

/**

 * 宽高工具类

 * @author zhudi

 * @create 2015年1月31日下午6:05:58

 */

public classZhudiScreenUtil {

/**

* 获取宽高

* @return 宽度 高度

*/

    publicstatic StringgetScreenWidthAndHeight(Contextcontext){

    DisplayMetricsmetric = newDisplayMetrics();

    ((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(metric);

    return metric.widthPixels +","+metric.heightPixels;

    }

/**

* 获取宽度

* @return 宽度

*/

    public staticint getScreenWidth(Contextcontext){

    DisplayMetricsmetric = newDisplayMetrics();

    ((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(metric);

    returnmetric.widthPixels;

    }

    

    /**

* 获取高度

* @return 高度

*/

    public staticint getScreenHeight(Contextcontext){

    DisplayMetricsmetric = newDisplayMetrics();

    ((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(metric);

    returnmetric.heightPixels;

    }

    

    /**

     * 设置 宽度 高度

     * @param view 控件

     * @param width 设置的宽度

     * @param height 设置的高度

     */

    public staticvoid setWidthHeightNumber(Viewview,int width,int height){

    LayoutParamsparamsPic = view.getLayoutParams();

    paramsPic.height =height;

    paramsPic.width =width;

    view.setLayoutParams(paramsPic);

    }

    

    /**

     * 设置高度

     * @param view  控件

     * @param height 设置的高度

     */

    public staticvoid setHeightNumber(Viewview,int height){

    LayoutParamsparamsPic = view.getLayoutParams();

    paramsPic.height =height;

    view.setLayoutParams(paramsPic);

    }

    

    

    /**

     * 设置宽度

     * @param view 控件 

     * @param width 设置的宽度

     */

    public staticvoid setWidthNumber(Viewview,int width){

    LayoutParamsparamsPic = view.getLayoutParams();

    paramsPic.width =width;

    view.setLayoutParams(paramsPic);

    }

}



使用:

int width = ZhudiScreenUtil.getScreenWidth(context);//获取屏幕的宽度

ZhudiScreenUtil.setWidthHeightNumber(view,width / 2 , 44 *width / 83);//设置宽高


0 0