2014-10-27Android学习------布局处理(五)------ListView布局继续学习-----城市列表应用程序
2014-10-28 20:44
513 查看
我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,这一期学习源码是网上找的个CityList 源码 百度搜就知道很多下载的地方废话不说了 先必须看下程序运行的结果是是么样子的,来吧,看下图:程序显示给用户看的就只有两个activity,两个视图(界面),第一个图展示的是:主程序的activity 界面上只有一个按钮,第二个图展示的是:城市列表,和 一个拼音列表 点击拼音列表可以搜索,快速进入到该字母的第一个城市城市的数据是放置在一个数据库,这里先不介绍。那么我先画画,这个界面布局该怎么去实现它:接下来看第二个界面:这里要学习的布局知识就多了。有如下几点:1.android:cacheColorHint=“#00000000”listView.setCacheColorHint(0); 或者android:cacheColorHint="#000000" 去除listview的拖动背景色自定义listview的时候,当你不使用android:cacheColorHint=“#00000000”会出现下面选中一个空间黑色底色的情况,破坏整体美观度:什么叫自定义ListView,就是你不使用系统的id号 @id/android:list 而是自己去定义一个id这里还需要讲一个属性就是选中是什么颜色:android:listSelector=""当你不使用android:listSelector属性,默认会显示选中的item为橙黄底色,有时候我们需要去掉这种效果:有的人模拟器可能不是橙黄底色,比如我的就是一种灰色调的选中色特别提供:ListView是一个经常要用到的android控件,现总结遇到过的一些美化的小细节。1)、listview在拖动的时候背景图片消失变成黑色背景,等到拖动完毕我们自己的背景图片才显示出来解决:在XML中加入android:scrollingCache=”false” 或 android:cacheColorHint=”#00000000″2)、listview的上边和下边有黑色的阴影解决: android:fadingEdge=”none”3)、修改listview的Item默认选择时的黄色背景解决:在java文件中使用listview.setSelector()方法,android:listSelector="#00000000"//这样写是透明的,也可加入Drawable图片4)、lsitview的每一项之间需要设置一个图片做为间隔解决: android:divider=”@drawable/list_driver”2.android:scrollbars属性
自由控件已经超过了布局的大小就会滚动 这个布局的大小就是指一屏
内容长度要超出整屏的高度就能实现滑动有以下设置none(隐藏),horizontal(水平),vertical(垂直)
这里面涉及到一个效果的问题:有很多时候我们发现这个设置好像没有效果,到底出了什么问题呢?这个还是等到碰到之后再说吧,今天这里先不涉及了
3.自定义控件的写法 (应用中插入广告的时候经常用这种方式吧)
<com.wust.citylist.activity.MyLetterListViewandroid:id="@+id/cityLetterListView"android:layout_width="30dip"android:layout_height="fill_parent"android:layout_alignParentRight="true"android:background="#40000000" />首先那个控件的名字是一个类名:[/code]
看下文件工程:
再讲一个30dip 这个dip=dp 前面我们有说到 控件的大小设置最好用dp 文字的大小设置最好用sp
到这里为止:我们的程序界面基本就结束了 我们看下预览效果:
写到这里肯定有人会问啊?我还是不懂你这个字母怎么放上去的啊?不是说相对布局里面只有一行吗?相对布局里面放置了两个控件
一个是自己定义的ListView ,一个是自己定义的类(自定义控件),只不过这个类也是继承了import android.view.View;
你看下它的名字就知道了:MyLetterListView --------》ListView
也就是说相当于在这个相对布局里面我们放置了两个元素,应该说这两个元素都是ListView
所以他就呈现了这样一个布局
那么接下来就需要搞清楚这个字母布局列表是怎么实现的,请看下篇文章
相关文章推荐
- 2014-10-27Android学习------布局处理(八)------自定义ListView的监听事件和Adapter的实现-----城市列表应用程序
- 2014-10-27Android学习------布局处理(八)------自定义吐司(Toast)-----城市列表应用程序
- 2014-10-27Android学习------布局处理(七)------26个字母的布局列表的监听事件处理-----城市列表应用程序
- 2014-10-27Android学习------布局处理(六)------26个字母的布局列表的实现-----城市列表应用程序
- 2014-10-27Android学习------自定义widget的监听事件的实现-----城市列表应用程序
- 2014-10-27Android学习------SQLite数据库操作(一)------城市列表应用程序
- 2014-10-25Android学习------布局处理(三)------常见且常用的列表布局
- 2014-10-27Android学习------程序源码+知识总结------城市列表应用程序
- 2014-10-25Android学习------布局处理(四)------ListView的item点击之后的布局
- Android学习ListView自定义布局,适配器BaseAdapter
- Android列表视图(ListView--SimpleAdapter)学习
- 从J2EE转向Android的第十二天 -----继续学习ListView
- Android学习系列 App列表之拖拽ListView(下)
- Android学习系列(11)--App列表之拖拽ListView(下)
- Android学习系列(16)--App列表之圆角ListView
- Android列表视图(ListView--ArrayAdapter)学习
- android学习之ListView布局的学习
- Android ListView1 列表控件的学习
- Android学习系列(15)--App列表之游标ListView(索引ListView)
- Android 学习笔记--android——listview的多种行布局的复用