5.0版本是谷歌在2014年10月份左右发布的最新一代LolliPop安卓系统,谷歌的意图是好的,但是到现在很多厂商还没有使用5.0系统,只有小米4搭载了该系统,现在小米5将要搭载最新的安卓6.0系统。小米进军安卓市场的速度还是非常迅速的。
6.0系统对比5.0系统没有5.0系统改善的幅度大,6.0系统只不过是在权限细化、网页性能提升、复制粘贴操作等小功能更加细化了。
5.0以Material Design风格进行设计。本文大概讲解以下 5.0都包括哪些特性。
Material Design风格概述
这是一种全新的设计风格,使用Material Design风格进行设计的APP,界面更加简洁,支持新动画,支持转场动画,也就是对动画效果增强了许多,对耗电方面也进行了优化。
虚拟机的变化
新系统放弃了以前的Dalvik虚拟机,采用全新的ART模式虚拟机,进行跨平台的编译。ART虚拟机编译器在内存占用及应用程序加载时间上进行了大幅提升。但是这感觉也更耗电了呢?
动画改变
揭示动画,达到了平滑过度的效果。
增加了对矢量图的支持,这个系统应该是安卓机第一次支持矢量图动画的系统。
转场动画 就是两个界面之间可以切换的更加自然,有动画过渡的一个过程。(后台更新界面毕竟是后台更新界面,我的意思是在时间上肯定还是没有减少)。
RecycleView替代ListView
以前ListView咱们是怎么用的呢?
先声明控件,定义适配器,listview展示。
RecycleView的可以展现表格布局、线性布局、瀑布流效果。实现非常的简单。
主要讲解一下RecycleView的使用。
也是需要声明控件。
然后是定义适配器,但是适配器和listview的实现稍有不同。
@Override
public ListHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view=LayoutInflater.from(context).inflate(R.layout.grild_item,parent,false);
return new ListHolder(view);
}
@Override
public void onBindViewHolder(ListHolder holder, int position) {
holder.setData(position);
}
@Override
public int getItemCount() {
return mtext.length;
}
/**
* 定义句柄继承RecycleView的ViewHolder
*/
class ListHolder extends RecyclerView.ViewHolder{
ImageView image;
TextView text;
public ListHolder(View itemView) {
super(itemView);
image= (ImageView) itemView.findViewById(R.id.ivgrid);
text= (TextView) itemView.findViewById(R.id.tvgrid);
}
/**
* 给控件设置数据的方法
* 根据相应的位置显示相应的方法
* @param position
*/
public void setData(int position) {
image.setImageResource(img[position]);
text.setText(mtext[position]);
}
然后如果要将界面显示出来,RecycleView还需要设置布局管理器,不然会报错。
recycleView.setLayoutManager(new StaggeredGridLayoutManager(1, 1));
必须要设置LinearLayoutManager\ GridLayoutManager\StaggeredGridLayoutManager其中一种布局。
这样就可以实现丰富的界面。