第一种 AutoLayout方法java
第一步:导依赖android
dependencies { //autoLayout依赖 compile 'com.zhy:autolayout:1.4.3' }
manifests---application标签内git
<!--注明设计稿的尺寸--> <meta-data android:name="design_width" android:value="768"> </meta-data> <meta-data android:name="design_height" android:value="1280"> </meta-data>
而后在你的PreView面板,选择分辨率一致的设备github
第二部建立 App类app
public class App extends Application { @Override public void onCreate() { super.onCreate(); //设备的物理高度进行百分比化: AutoLayoutConifg.getInstance().useDeviceSize(); } }
第三部ide
public class MainActivity extends AutoLayoutActivity
第四部工具
XML布局文件内 随心因此的用PX设置大小啦布局
<TextView android:text="欢迎" android:gravity="center" android:layout_width="200px" android:layout_height="300px" /> <ImageView android:src="@mipmap/ic_launcher" android:layout_width="300px" android:layout_height="300px" />
固然你也能够不去继承AutoLayoutActivity
来使用。spa
AutoLayoutActivity
的用法其实是完成了一件事:设计
若是你不想继承AutoLayoutActivity
,那么你就得像Google的百分比库同样,去用AutoXXXLayout代替系统原有的XXXLayout。固然,你能够放心的是,全部的系统属性原有的属性都会支持,不过根布局上就不支持px的自动百分比化了,可是通常根布局都是MATCH_PARENT,而上述的方式,根布局也是能够直接px的百分比化的。
对于ListView这类控件的item,默认根局部写“px”进行适配是无效的,由于外层非AutoXXXLayout,而是ListView。可是,不用怕,一行代码就能够支持了:
@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { holder = new ViewHolder(); convertView = LayoutInflater.from(mContext).inflate(R.layout.list_item, parent, false); convertView.setTag(holder); //对于listview,注意添加这一行,便可在item上使用高度 AutoUtils.autoSize(convertView); } else { holder = (ViewHolder) convertView.getTag(); } return convertView; }
注意AutoUtils.autoSize(convertView);
这行代码的位置便可。demo中也有相关实例。
public ViewHolder(View itemView) { super(itemView); AutoUtils.autoSize(itemView); } //... @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View convertView = LayoutInflater.from(mContext).inflate(R.layout.recyclerview_item, parent, false); return new ViewHolder(convertView); }
必定要记得LayoutInflater.from(mContext).inflate
使用三个参数的方法
----------------------------------------------------------------------------------------------------------
第二种方法 百分比适配方法
首先 下载大神自动生成工具(内置了经常使用的分辨率)
https://github.com/hongyangAndroid/Android_Blog_Demos/tree/master/blogcodes/src/main/java/com/zhy/blogcodes/genvalues
下载:jar包
解压res
<ImageView android:src="@mipmap/ic_launcher" android:layout_width="@dimen/x320" android:layout_height="@dimen/y400" />
OK完成 是否是很简单 吃鸡