创新源于模仿之六:仿iPhone的分组列表做一个配置界面
这个效果现在很多见了,象新浪微博客户端的“我的资料”,MIUI中的设置,米聊中的“名片”,,,等等等等。iPhone啊,你让Android程序员伤不起。
这个功能的实现很简单,如果你想简单的话,就是一个图片和布局的问题。今天继续拿来主义,反编译一下米聊的代码,从它的res里寻找我们需要的东西。
在res/drawable-hdpi/namecard_xxxxxxx 这些图片就是我们需要的资源,小米的设计人员做的图就是精细,比新浪的好多了。
使用上有两种方法,米聊的“名片”是一个ListActivity,所以,需要定义一个Item类封装一下每个项目(显示名称、弹出文本编辑框还是选择框、取值等等),然后在ArrayAdapter中的getView中,针对不同的Item分别加载对应的layout显示出来即可。
但是我觉得更简单的方法就是直接放在一个layout中,反正设置页又没有多少动态的项目,直接用普通的Activity就可以了,ListActivity有点学浪费了。
<RelativeLayout android:paddingTop="10.0dip" android:paddingBottom="5.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content"> <FrameLayout android:layout_gravity="center" android:background="@drawable/settings_item_bkg_left" android: android:paddingLeft="10.0dip" android:paddingTop="10.0dip" android:paddingRight="10.0dip" android:paddingBottom="20.0dip" android:layout_width="100.0dip" android:layout_height="110.0dip"> <ImageView android:layout_gravity="center" android: android:layout_width="80.0dip" android:layout_height="80.0dip" android:src="@drawable/avatar_default" android:scaleType="centerCrop" /> </FrameLayout> <LinearLayout android: android:background="@drawable/settings_item_rt_bg" android:layout_toRightOf="@id/settings_basic_avatar_cont" android:layout_alignTop="@id/settings_basic_avatar_cont" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:textSize="16.0dip" android:textColor="#c0000000" android:layout_gravity="left|center" android: android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="10.0dip" android:text="nick name" android:layout_weight="1.0" /> <ImageView android:layout_gravity="center_vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10.0dip" android:scaleType="fitXY" android:src="@drawable/item_clickable" /> </LinearLayout>
其实就是每个元素的background,选择合适的有圆角的白底的图片做背景就可以达到效果。当然整个页面应该是浅灰色的为宜。
这样就OK了。真得很简单但是效果一下就出来了。
最后更新:2017-04-02 06:51:59
上一篇:
Android JNI 使用的数据结构JNINativeMethod详解
下一篇:
创新源于模仿之二:美化ListView的尝试
提升Android下内存的使用意识和排查能力
九度1464:Hello World for U
Android WebView的缓存
Kibana模块——介绍
android 中系统自带的主题与样式(theme and style)
游戏安全资讯精选 2017年第十期 英国彩票网遭遇DDoS攻击,中断90分钟 DNSMASQ多高危漏洞公告 阿里云协助警方破获国内最大黑客攻击案,攻击峰值690G
特写|Kaggle被谷歌收购能否复制,中国的Kaggle们走到哪了
java反射3——类实例的方法1
数 AI 人物还看今朝!CCAI 2017 人工智能青年论坛即将启航
android中透明Dialog及ProgressDialog的实现