布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/scan"
android:layout_marginTop="7dp"
android:layout_marginLeft="29dp"
android:layout_width="25dp"
android:layout_height="25dp"
android:src="@drawable/sao_hei"/>
<ImageView
android:id="@+id/image"
android:layout_marginTop="7dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/sortheader"
android:layout_marginLeft="29dp"
android:layout_toRightOf="@id/scan"/>
<ImageView
android:id="@+id/message"
android:layout_marginTop="7dp"
android:layout_marginLeft="2dp"
android:layout_alignParentRight="true"
android:layout_width="25dp"
android:layout_height="25dp"
android:src="@drawable/xiaoxi"
android:layout_toRightOf="@id/image"/>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#d995999e"
android:layout_below="@id/image"
android:layout_marginTop="7dp"/>
</RelativeLayout>
组合控件
public class SortHeader extends RelativeLayout implements View.OnClickListener {
private onClickListener listener;
public interface onClickListener{
void ScanClick(View view);
void ImageClick(View view);
void MessageClick(View view);
}
public void setClick(onClickListener listener){
this.listener=listener;
}
public SortHeader(Context context) {
this(context,null);
}
public SortHeader(Context context, AttributeSet attrs) {
this(context, attrs,0);
}
public SortHeader(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initView(context, attrs, defStyleAttr);
}
//
private void initView(Context context, AttributeSet attrs, int defStyleAttr) {
View view = View.inflate(context, R.layout.sort_header,this);
ImageView scan = (ImageView)view.findViewById(R.id.scan);
ImageView image = (ImageView)view.findViewById(R.id.image);
ImageView message = (ImageView)view.findViewById(R.id.message);
scan.setOnClickListener(this);
image.setOnClickListener(this);
message.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.scan:
listener.ScanClick(view);
break;
case R.id.image:
listener.ImageClick(view);
break;
case R.id.message:
listener.MessageClick(view);
break;
}
}
}