Android屏幕分辨率,尺寸获取问题
来源:互联网 发布:淘宝上的艾滋试纸 编辑:程序博客网 时间:2024/05/16 12:31
Android手机生产商很多,又没有硬性规定,所以android手机尺寸很多,分辨率也有很多种。因此一种应用要做到,在各个不同屏幕大小的手机上都能正常布局应用,不影响用户使用。网上有很多方法,总结一下:
一.下面的方法是获得控件的大小
利用getLayoutParams()方法和setLayoutParams()方法。
三步曲:
1、首先利用getLayoutParams()方法,
获取控件的LayoutParams LayoutParams laParams=(LayoutParams)imageView.getLayoutParams();
2、设置该控件的layoutParams参数 laParams.height=200; laParams.width=100;
3、将修改好的layoutParams设置为该控件的layoutParams. imageView.setLayoutParams(laParams);
二.获得屏幕的大小 在真机上面获取分辨率的话为:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
Int nowWidth = dm.widthPixels; //当前屏幕像素
int nowHeigth = dm.heightPixels; //当前屏幕像素
Int density=dim.density;//屏幕的密度density
Log.e("密度:",density+"");
int width = (int) (nowWidth * density);
int height = (int) (nowHeigth * density);
Java代码
public class TestShipingActivity extends Activity {
/** Called when the activity is first created. */ private Button btn;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn=(Button) findViewById(R.id.btn1);
LayoutParams laParams=(LayoutParams) btn.getLayoutParams();
DisplayMetrics dm=new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int nowWidth=dm.widthPixels;//获得控件的原始宽度
int nowheight=dm.heightPixels;//获得控件的原始高度
int density = (int) dm.density;//获得真机的像素密度
//乘以手机的密度是因为每一个手机存在差异,
int width = (int) (nowWidth * density);//获得当前手机的宽度
int height = (int) (nowheight * density);//获得当前手机的高度
laParams.width=(laParams.width*width)/320;//设置新手机上的控件的宽度
laParams.height=(laParams.height*height)/480;//设置新手机上的控件的高度
btn.setLayoutParams(laParams); } }
- Android屏幕分辨率,尺寸获取问题
- Android之获取屏幕分辨率、密度、尺寸
- Android开发中获取尺寸(View和屏幕分辨率)
- 获取当前屏幕分辨率(尺寸),状态栏尺寸
- Android 获取屏幕分辨率
- Android 获取屏幕分辨率
- android 获取屏幕分辨率
- android DisplayMetrics 获取屏幕分辨率
- Android 获取屏幕分辨率
- android DisplayMetrics 获取屏幕分辨率
- android获取屏幕分辨率
- android-获取屏幕分辨率 - 随心
- Android手机获取屏幕分辨率
- Android 获取屏幕分辨率
- Android获取屏幕分辨率
- android 设备获取屏幕分辨率
- android获取屏幕分辨率
- android 获取屏幕分辨率
- 从客户端 中检测到有潜在危险的 Request.Form 值。
- MFC中的 Document / View 结构的使用 <转载+自己总结,MFC中的MVC>
- 一文讲清楚Windows Mobile和Wince(Windows Embedded CE)的字符集问题
- GnomeShell 发布新的外观【Relayout】
- 【ArcGIS 10.2新特性】GeoEvent Processor for Server常见问题
- Android屏幕分辨率,尺寸获取问题
- 10分钟学会使用qmake
- 使用virsh为linux kvm虚拟机添加disk
- UITextField的总结
- 详细介绍使用PHP框架的原因
- WindowsPhone手机已上线小游戏集合整项目分享2(一共十九个本集合共十个)
- JQUERY EASYUI 验证框(VALIDATEBOX)用法
- Android 权限
- SSH原理与运用(二):远程操作与端口转发