繁体   English   中英

如何在不同的设备上以dpi为单位设置不同的高度

[英]How to set different height in dpi to different devices

基于设备创建位图时可以设置不同的高度吗? 我的意思是说,对于手机,我要为位图设置不同的高度,对于平板电脑,我要设置不同的高度。 现在,在dimen.xml文件中声明了位图的高度和宽度,并且我对所有设备(电话和平板电脑)使用相同的高度。

但是我的要求是在平板电脑中显示时设置不同的位图高度。 那么该怎么做。

用于创建位图的代码

Bitmap canvasBitmap = Bitmap.createBitmap(getResources().getDimension(R.dimen.width), getResources().getDimension(R.dimen.height), Bitmap.Config.ARGB_8888);

我在片段中使用的一些示例可以给您一些想法:

getActivity().getWindowManager().getDefaultDisplay().getMetrics(this._metrics);

        final int _lowDensityWidth = 55;
        final int _lowDensityHeight = 55;
        final int _medDensityWidth = 85;
        final int _medDensityHeight = 85;
        final int _higDensityWidth = 155;
        final int _higDensityHeight = 155;
        switch (_metrics.densityDpi) {
            case DisplayMetrics.DENSITY_LOW:
                imageView.setLayoutParams(new GridView.LayoutParams(_lowDensityWidth, _lowDensityHeight));
                break;
            case DisplayMetrics.DENSITY_MEDIUM:
                imageView.setLayoutParams(new GridView.LayoutParams(_medDensityWidth, _medDensityHeight));
                break;
            case DisplayMetrics.DENSITY_HIGH:
                imageView.setLayoutParams(new GridView.LayoutParams(_higDensityWidth, _higDensityHeight));
                break;
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM