Android Studio 中获取屏幕宽度实例
作者:RylynnKang 时间:2022-03-25 11:55:36
获取整个屏幕的宽度的实例
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值。
来源:https://blog.csdn.net/qq_35980005/article/details/78230129
标签:Android,Studio,屏幕,宽度
0
投稿
猜你喜欢
C#过滤DataTable中空数据和重复数据的示例代码
2022-03-15 19:33:45
详谈Enumeration接口和Iterator接口的区别
2023-05-08 02:25:23
C# Winform 实现控件自适应父容器大小的示例代码
2021-06-15 20:00:52
Java实现多文件上传功能
2023-08-02 12:52:02
Java数组的基本学习教程
2021-07-14 05:08:00
C#打包应用程序,与.NETFramework介绍
2022-03-29 15:29:20
c#中list.FindAll与for循环的性能对比总结
2021-08-15 21:20:44
Android 仿京东、拼多多商品分类页的示例代码
2023-05-02 13:55:30
Android使用自定义View实现360手机卫士波浪球进度的效果
2023-03-21 19:18:34
Android 动画之ScaleAnimation应用详解
2023-05-08 19:36:28
C# 表达式目录树Expression的实现
2023-04-03 22:57:32
mybatis <foreach>标签动态增删改查方式
2022-07-27 20:03:16
Springboot+ElementUi实现评论、回复、点赞功能
2022-06-16 04:34:00
Java结构型模式之门面模式详解
2023-07-29 10:26:55
android仿微信表情雨下落效果的实现方法
2023-07-15 13:44:14
Java实现储存对象并按对象某属性排序的几种方法示例
2022-05-04 18:05:57
java三个环境变量配置简单教程
2023-11-28 20:45:30
在C#中使用OpenCV(使用OpenCVSharp)的实现
2023-02-21 16:15:38
SpringBoot四种读取properties文件的方式(小结)
2023-10-10 03:25:14
Spring Boot中@ConditionalOnProperty的使用方法
2021-11-27 09:07:33