日常生活中我们使用微信、QQ、微博等都会看到很多条目item,效果如下:
其实它是通过组合控件将textView和ImgView组合起来作为一个新的view:
1.在value文件夹下的attr文件加入我们自定义的属性声明
<declare-styleable name="MenuItemView">
<!--布局中左边的icon-->
<attr name="leftIcon" format="reference"/>
<!--布局中右边的icon-->
<attr name="rightIcon" format="reference"/>
<!--布局中的文字-->
<attr name="text"/>
<!--文字的大小-->
<attr name="textSize"/>
<!--文字的颜色-->
<attr name="leftTextColor" format="color"/>
<attr name="rightTextColor" format="color"/>
</declare-styleable>
2.自定义我们的view
public class MenuItemView extends RelativeLayout {
ImageView iconLeft;
ImageView iconRight;
TextView menuTextLeft;
public MenuItemView(Context context, AttributeSet attrs) {
super(context, attrs);
init(context, attrs);
}
public MenuItemView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context, attrs);
}
private void init(Context context, AttributeSet attrs) {
inflate(context, R.layout.menuitem_layout, this);