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 中获取屏幕宽度实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
AndroidStudio 设置格式化断行宽度教程
1.设置格式化换行的宽度 就是这个线,那条右标准线的位置: Setting–>Editor–>Code Style 默认值是100,按照自己的需要更改. 2.设置格式化的时候自动断行到标准线位置 这样就不用往右拖看代码了: Setting–>Editor–>Code Style–>Java 点击右侧标签Wrapping and Braces下勾选Line breaks和EnSure right margin is not exceeded 补充知识:Android Studi
-
详解Android Studio3.5及使用AndroidX的一些坑
google的更新优化往往会牵动一大批开发者的心.去年的androidx,到今年studio3.5后都默认使用androidx了.其实对于我们开发者而言,我们都只是调用他的api,对我们的影响不大??!可是人性的习惯,还是比较不那么容易改变的.现在我就来说说我遇到的一些坑吧.话说还是很严重.不知道androidx的请自行百度. 一.我们从新建一个项目说. 3.5新建项目,是默认使用androidx的 看最后一样,Use androidx.* artifacts.而且不能取消掉的. 那么到我们项目
-
Android Studio 中获取屏幕宽度实例
获取整个屏幕的宽度的实例 Point p = new Point(); //获取窗口管理器 WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); wm.getDefaultDisplay().getSize(p); screenWidth = p.x; // 屏幕宽度 补充知识:Android屏幕适配之动态设置单个控件的宽高比例 前言:这个问题出现在我做平板项目的时候,需要横排显示
-
在Android Studio中使用BaiduMap SDK实时获取当地位置信息
配置BaiduMap 环境 1.在百度API中新建自己的一个APP包名和APP名需要注意和自己Android Studio 中的包名和APP名保持一致: 2.百度地图中还需要填写一个SHA1 数字签名: a.输入keytool -list -v -keystore debug.keystore,会得到三种指纹证书,选取SHA1类型的证书(密钥口令是android),这个获取到的SHA1的值和ecplise中获取的值是一样的,是作为debug用的. b.输入keytool -list -v -ke
-
Android Studio获取SHA1值实例详解
Android Studio获取SHA1值实例详解 前言 使用百度地图的小伙伴们都会知道获取百度地图的密钥需要SHA1和包名,在Eclipse中,我们可以很方便的得知SHA1值,如下图: 但是在Android Studio中,该怎么获取SHA1的值呢?不要着急,马上呈上~ Android Studio获取SHA1值 强大的Android Studio为我们提供了Terminal这个工具,我们可以通过他进行相应命令从而获取所需内容. Java中提供了Keytool工具去让我们管理证书,那么接下来我
-
详解Android Studio中Git的配置及协同开发
一. Android Stutio配置git setting–>Version Control–>Git–>Path to Git executable中选择git.exe的位置,这个Stutio一般会默认配置好: 配置完路径后点击后面的Test按钮,出现下面提示框则表示配置成功: 二. 将项目分享到github 1. 设置github账号密码 打开Setting–>Version Control–>GitHub,填写完账号密码后,点击Test测试,如果连接成功会弹出如下提示
-
详解如何在Android Studio中添加RecyclerView-v7支持包
一直知道RecyclerView可以代替ListView.GridView使用,听说功能很强大,但还没有去学习过.今天想学习,没想到还没开始便撞墙了.输入Recycler,只有这两个东西,没有提示RecyclerView,说明支持包中没有. 最后一番百度后,终于解决(真不敢想象没有网络的情况下,怎么开发.怎么解决问题). 1.打开SDK Manager,在Extras树下找到Android Support Library,下载好支持包.RecyclerView在v7-21版本就出来了.我这里不用
-
Android Studio中导入module的方法(简单版)
1.把要导入成Mudle的项目修改成符合Library的格式 修改该项目中bulid.gradle文件中第一行代码 把 apply plugin: 'com.android.application' 修改为 apply plugin: 'com.android.library' 然后,修改AndroidManifiest.xml文件中配置信息,此处主要是把原来配置的项目Style等配置以及MainActivity配置删除,这样处理是为了防止重复.以下以一个我的Moudle文件的AndroidMa
-
android项目从Eclipse迁移到Android studio中常见问题解决方法
(1)将Eclipse项目导入到Android studio 中出现9-patch image问题解决方法: 在build.gradle里添加以下两句: aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false 用来关闭Android Studio的PNG合法性检查的,直接不让它检查. (2)Android Studio 错误: 非法字符: '\ufeff' 解决方案|错误: 需要class, interface
-
如何在Android studio 中使用单例模式
本篇简单介绍如何在Android studio中 使用单例模式和使用注意事项. 单例模式 为什么要使用单例模式? 有一些对象我们只需要一个,只需要一个线程池 .缓存或是只有一台打印机.机器人 .机器人上面只有一个寻磁传感器.我们可以通过全局的静态变量来实现,但是全局变量在程序一开始就创建 可能比较耗费资源.可能一直没用到.单例模式和全局变量一样方便又没有它的缺点. 单利模式使用 public class Sensor { // 使用静态变量记录唯一的实例 private static Senso
-
Android Studio中使用lambda表达式的方法
1.module的build.gradle里buildTypes中添加: compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 2.module的build.gradle里defaultConfig中添加: jackOptions.enabled = true 3.注意事项:jack可能会导致中文乱码,所以需要在gradle.proper
-
Android 四种获取屏幕宽度的方法总结
Android 四种获取屏幕宽度的方法 方法一: WindowManager wm = (WindowManager) this .getSystemService(Context.WINDOW_SERVICE); int width = wm.getDefaultDisplay().getWidth(); int height = wm.getDefaultDisplay().getHeight(); 方法二: WindowManager wm1 = this.getWindowManager
随机推荐
- AngularJS 过滤器(自带和自建)详解
- React实现双向绑定示例代码
- js 匹配多个的Email地址的代码
- 来自qq的javascript面试题
- 详解Asp.Net MVC——控制器与动作(Controller And Action)
- ASP.NET MVC中解析淘宝网页出现乱码问题的解决方法
- c#初学简单程序实例代码介绍
- Ubuntu apt-get指令autoclean,clean,autoremove的区别
- jQuery插件开发的两种方法及$.fn.extend的详解
- jquery 屏蔽一个区域内的所有元素,禁止输入
- 解读赫夫曼树编码的问题
- javascript用函数实现对象的方法
- Android开发中libs和jinLibs文件夹的作用详解
- 梦幻网络为您提供免费50M ASP免费空间
- 用Go+Vue.js快速搭建一个Web应用(初级demo)
- 用tensorflow实现弹性网络回归算法
- pandas按若干个列的组合条件筛选数据的方法
- python爬虫 使用真实浏览器打开网页的两种方法总结
- python仿evething的文件搜索器实例代码
- python+ffmpeg批量去视频开头的方法