博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android适配
阅读量:2157 次
发布时间:2019-05-01

本文共 1344 字,大约阅读时间需要 4 分钟。

所有单位使用单位px

0.美术切图按固定比例。如1080*1920

一:XML配置

1.根目录设置固定宽高(美术切图比例)。如:1080*1920

2.图片引用使用src,防止自动拉伸。如:android:src = "@drawable/loading_bg"

3. 图片宽高使用切图原始大小,如:loading_bg 的尺寸为1080*1920 

例:

android:layout_width="1080px"
android:layout_height="1920px"
android:src="@drawable/loading_bg"

 

二:Activity控制根据屏幕大小缩放

getWindow().getDecorView().setBackgroundColor(Color.BLACK);

WindowManager wm = (WindowManager) FolderListActivity.this.getSystemService(Context.WINDOW_SERVICE);int width = wm.getDefaultDisplay().getWidth();int height = wm.getDefaultDisplay().getHeight();float scaleNum = (float)height/1920f;rootLayout.setPivotY(0);rootLayout.setScaleY(scaleNum);rootLayout.setScaleX(scaleNum);if (scaleNum * 1080 < width) {   int offsetX = (int)((width - scaleNum * 1080) / 2);   ViewGroup.LayoutParams params = rootLayout.getLayoutParams();   if (params instanceof FrameLayout.LayoutParams) {      ((FrameLayout.LayoutParams)params).setMargins(offsetX, 0, 0, 0);   }   if (params instanceof LinearLayout.LayoutParams) {      ((LinearLayout.LayoutParams)params).setMargins(offsetX, 0, 0, 0);   }   if (params instanceof RelativeLayout.LayoutParams) {      ((RelativeLayout.LayoutParams)params).setMargins(offsetX, 0, 0, 0);   }   rootLayout.setLayoutParams(params);}Log.e("当前手机分辨率:","宽:"+width+"..高:"+height);Log.e("当前手机分辨率:","缩放系数:"+scaleNum);

三:颤抖吧,凡人!!!

xml布局样例:

转载地址:http://tpmwb.baihongyu.com/

你可能感兴趣的文章
PLSQL常用方法汇总
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>
Oracle PL/SQL语言初级教程之异常处理
查看>>
Oracle PL/SQL语言初级教程之游标
查看>>
Oracle PL/SQL语言初级教程之操作和控制语言
查看>>
Oracle PL/SQL语言初级教程之过程和函数
查看>>
Oracle PL/SQL语言初级教程之表和视图
查看>>
Oracle PL/SQL语言初级教程之完整性约束
查看>>
PL/SQL学习笔记
查看>>
如何分析SQL语句
查看>>
结构化查询语言(SQL)原理
查看>>
SQL教程之嵌套SELECT语句
查看>>
几个简单的SQL例子
查看>>
日本語の記号の読み方
查看>>
计算机英语编程中一些单词
查看>>
JavaScript 经典例子
查看>>
判断数据的JS代码
查看>>
js按键事件说明
查看>>
AJAX 初次体验!推荐刚学看这个满好的!
查看>>