2.Android 自定义通用的Item布局
转载:http://www.jianshu.com/p/e7ba4884dcdd
BaseItemLayout
简介
在工作中经常会遇到下面的一些布局,如图标红处:
因此自定义了一个通用的Item布局,只需几行代码就可以根据需要添加任意个item。
使用
添加Gradle依赖
在 build.gradle 的 dependencies 添加
dependencies { ...
compile 'com.maiml:baseitemlayoutlibrary:1.0.0' }
- 在布局使用
<com.maiml.library.BaseItemLayout
android:id="@+id/layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:text_size = "15"
app:text_color = "@color/gray_333333"
app:icon_margin_left = "10"
app:icon_text_margin = "10"
app:arrow_margin_right = "10"
app:item_height = "50"
app:line_color = "@color/line_d6d6d6"
>
</com.maiml.library.BaseItemLayout>
- 代码中调用
layout = (BaseItemLayout) findViewById(R.id.layout);
List<String> valueList = new ArrayList<>();
valueList.add("相册");
valueList.add("收藏");
valueList.add("钱包");
valueList.add("卡包");
valueList.add("设置");
List<Integer> resIdList = new ArrayList<>();
resIdList.add(R.drawable.xc);
resIdList.add(R.drawable.sc);
resIdList.add(R.drawable.qb);
resIdList.add(R.drawable.kb);
resIdList.add(R.drawable.sz);
layout.setValueList(valueList) // 文字 list
.setResIdList(resIdList) // icon list
.setArrowResId(R.drawable.img_find_arrow) // 右边的箭头
.setArrowIsShow(true) //是否显示右边的箭头
.setItemMarginTop(10) //设置 item的边距(全部)
.setItemMarginTop(0,0) // 设置 某一个item 的边距
.setIconHeight(24) // icon 的高度
.setIconWidth(24) // icon 的宽度
.create();
- 设置监听事件
layout.setOnBaseItemClick(new BaseItemLayout.OnBaseItemClick() {
@Override
public void onItemClick(int position) {
Log.e(TAG,"----- position = " + position);
}
});
参数说明
name | format | description |
---|---|---|
text_size | integer | 字体大小 |
text_color | color | 字体颜色 |
icon_margin_left | integer | 图标距离 左边的margin |
icon_text_margin | integer | 文字距离 图标左边的margin |
arrow_margin_right | integer | 箭头距离右边的margin |
item_height | integer | item的高度 |
line_color | color | 线的颜色 |
参数图解
源码
2.Android 自定义通用的Item布局的更多相关文章
- Android 自定义View及其在布局文件中的使用示例(三):结合Android 4.4.2_r1源码分析onMeasure过程
转载请注明出处 http://www.cnblogs.com/crashmaker/p/3549365.html From crash_coder linguowu linguowu0622@gami ...
- Android 自定义View及其在布局文件中的使用示例(二)
转载请注明出处 http://www.cnblogs.com/crashmaker/p/3530213.html From crash_coder linguowu linguowu0622@gami ...
- Android RecycleView实现混合Item布局
首先来看看效果吧: 效果预览.png 本实例来自于慕课网的视屏http://www.imooc.com/video/13046,实现步骤可以自己去观看视屏,这里只记录了下实现的代码. 添加依赖: (1 ...
- Android自定义之流式布局
流式布局,好处就是父类布局可以自动的判断子孩子是不是需要换行,什么时候需要换行,可以做到网页版的标签的效果.今天就是简单的做了自定义的流式布局. 具体效果: 原理: 其实很简单,Measure La ...
- Android 自定义通用的loadingview
介绍 好久没有写博客啦,最近在接近新年了,年前的工作都要收尾,所以特别忙,周末抽空写了个通用的加载view,写篇博客分享出来. 功能 1.显示加载视图,加载失败的时候显示加载失败视图,数据为空时显示数 ...
- Android 自定义View及其在布局文件中的使用示例
前言: 尽管Android已经为我们提供了一套丰富的控件,如:Button,ImageView,TextView,EditText等众多控件,但是,有时候在项目开发过程中,还是需要开发者自定义一些需要 ...
- Android自定义ListView的Item无法响应OnItemClick的解决办法
转: 如果你的自定义ListViewItem中有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus,也 ...
- Android自定义ListView的Item无法响应OnItemClick的解决办法(转)
原文链接:http://www.linuxidc.com/Linux/2011-09/43205.htm 如果你的自定义ListViewItem中有Button或者Checkable的子类控件的话,那 ...
- Android自定义滑动显示隐藏布局
方式一:上下左右滑动显示隐藏布局 总结代码地址: http://git.oschina.net/anan9303/customView参考例子: http://www.jianshu.com/p/fc ...
随机推荐
- 在VisualStudio2013,2015中如何安装自定义项目模板
For example, I want to install EP prj template: AxWebProject.zip Copy AxWebProject.zip zip file into ...
- 4816 江哥的dp题b
4816 江哥的dp题b 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 给出两个1-N的随机排列A,B.若 ...
- 【WPF】TextBox样式重写注意事项
1.普通控件重写需要添加一行 <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="C ...
- ssh 免密码设置失败原因总结
先复习一下设置ssh免密码操作的步骤: 进入主目录 cd 生成公钥 ssh-keygen -t rsa -P '' (注:最后是二个单引号,表示不设置密码) 然后分发公钥到目标机器 ssh-copy- ...
- Spring Security授权 AccessDecisionManager
Spring Security授权 AccessDecisionManager 博客分类: Security Spring 在前面那篇博客有一段配置: <http auto-config=& ...
- Debian8修改启动默认运行级别
Two things you need to know: 1) Systemd boots towards the target given by "default.target" ...
- 为什么我们的web前端变的越来越复杂
前端发展了也有些年头了,曾记得很多年前,聊起前端,都觉得是很简单,那个时候都没有前端工程师这个职位.可现在,前端已经逆袭了,已经不是原来的样子了,各种技术层出不穷,显的越来越高深莫测了.前端真的变得那 ...
- 项目分布式部署那些事(1):ONS消息队列、基于Redis的Session共享,开源共享
因业务发展需要现在的系统不足以支撑现在的用户量,于是我们在一周之前着手项目的性能优化与分布式部署的相关动作. 概况 现在的系统是基于RabbitHub(一套开源的开发时框架)和Rabbit.WeiXi ...
- 支持向量机通俗导论(理解SVM的三层境界)
原文链接:http://blog.csdn.net/v_july_v/article/details/7624837 作者:July.pluskid :致谢:白石.JerryLead 出处:结构之法算 ...
- c# 获取网页源码
C#获取指定网页HTML原代码可使用 WebClient WebRequest HttpWebRequest 三种方式来实现. 当然也可使用webBrowse!在此就不研究webBrowse如何获取了 ...