1.ToolBar
今天终于又明白了一些ToolBar的使用。非常感谢mChenys的博客,推荐推荐,这个他讲的很详细。我就不多说了。我就把我不太明白,然后看完又明白的部分总结一下。
就是在为ToolBar设置一些属性的时候会用到
android:layout_height="?attr/actionBarSize"
解释一下:?attr/actionBarSize:表示根据屏幕的分辨率采用系统默认的高度
如果低版本也要使用的话,则需要使用v7包的,否则只有api21上才能有效
//取代原本的actionbar
setSupportActionBar(mToolbar);
//侧边栏的按钮
mToolbar.setNavigationIcon(R.drawable.back);
之后,就是之前了解的。首先要自己设置样式,在res/values/stlye.xml 下设置。然后在Appclication里面把style改成自己设置的。在布局的xml文件还可以添加控件。在Activity里进行初始化设置,还要设置menu 的xml文件。
2 listView OnItemClickListener 的position 和id 的区别
今天用这个方法的时侯,有三个参数 但是position 和id 很容易混淆。在没有查资料之前,我以为position == id 的,但是listview可以加header 和footer ,这样以后,position和id 就不一样了。因为,addHeader和footer 会在serAdapter之前,这样,当listView得知有Header或footer加入后,就会在adapter外面再套一个HeadAdapter,position事实上就是ListView中被点击的view的位置,而id是来自于adapter.getItemId(position)。所以,这个位置应该是这个被点击的view在数组[所有的headerView,用户添加的view,所有的footerView]中的位置.
3.CoordinatorLayout
它是用来组织它的子views之间协作的一个父view。CoordinatorLayout默认情况下可理解是一个FrameLayout,它的布局方式默认是一层一层叠上去。CoodinatorLayout给我们实现了一个可以被子view代理实现方法的一个布局。这和传统的ViewGroup不同,子view从此知道了彼此之间的存在,一个子view的变化可以通知到另一个子view。CoordinatorLayout所做的事情就是当成一个通信的桥梁,连接不同的view。使用Behavior对象进行通信。