Android Studio中获取屏幕宽度的案例

发布时间:2021-05-07 14:33:27 作者:小新
来源:亿速云 阅读:244

小编给大家分享一下Android Studio中获取屏幕宽度的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Android是什么

Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。

获取整个屏幕的宽度的实例

Point p = new Point();
//获取窗口管理器
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
wm.getDefaultDisplay().getSize(p);
screenWidth = p.x; // 屏幕宽度

补充知识:Android屏幕适配之动态设置单个控件的宽高比例

前言:这个问题出现在我做平板项目的时候,需要横排显示一张图片以及其他控件,如下图:

Android Studio中获取屏幕宽度的案例

要求图、文各占一半大小,图片的宽高比例目测是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中获取屏幕宽度的案例”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. Android分享笔记(1) 获取屏幕尺寸,包括状态栏
  2. 怎么在android中利用贝塞尔曲线实现波浪效果

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

android studio

上一篇:Android Studio kotlin怎么生成编辑类注释代码

下一篇:Android Studio如何引入FFmpeg的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》