2.Android 自定义通用的Item布局


转载:http://www.jianshu.com/p/e7ba4884dcdd

BaseItemLayout

简介

在工作中经常会遇到下面的一些布局,如图标红处:


05.png

07.png

08.png

因此自定义了一个通用的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 线的颜色

参数图解


10.png

源码

GitHub


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM