Android Studio 中获取屏幕宽度实例
获取整个屏幕的宽度的实例
Point p = new Point(); //获取窗口管理器 WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); wm.getDefaultDisplay().getSize(p); screenWidth = p.x; // 屏幕宽度
补充知识:Android屏幕适配之动态设置单个控件的宽高比例
前言:这个问题出现在我做平板项目的时候,需要横排显示一张图片以及其他控件,如下图:

要求图、文各占一半大小,图片的宽高比例目测是1:2。这种情况不适合把高度写死,因为iPad的屏幕大小差异有些大,高度写死图片hin容易变形,因此我们就需要动态去设置这个图片的宽高。
正题:首先我们已知图片宽度是屏幕的一半,所以我们只要获取图片的宽度,然后设置高度为宽度的1/2即可。
img.post(new Runnable() {
@Override
public void run() {
int w = img.getWidth();
int h = w / 2;
img.setLayoutParams(new LinearLayout.LayoutParams(w, h));
}
});
这里用了post方法来延迟获取宽度,是为了防止在img自身未完成测量的时候该方法过早调用,这种情况得到的宽度为0;
附加提示:如果你的控件有margin值,此时就不管用了,可以转换为让其父控件设置padding值。
以上这篇Android Studio 中获取屏幕宽度实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Android三方依赖冲突Gradle中exclude的使用
这篇文章主要介绍了Android三方依赖冲突Gradle中exclude的使用,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下2022-09-09
Android中ConstraintLayout约束布局的最全详细解析
ConstraintLayout是Google在Google I/O 2016大会上发布的一种新的布局容器(ViewGroup),它支持以灵活的方式来放置子控件和调整子控件的大小,下面这篇文章主要给大家介绍了关于Android中ConstraintLayout约束布局详细解析的相关资料,需要的朋友可以参考下2022-08-08
Android中系统默认输入法设置的方法(输入法的显示和隐藏)
这篇文章主要介绍了Android中系统默认输入法设置的方法(输入法的显示和隐藏)的相关资料,需要的朋友可以参考下2016-01-01


最新评论