自定义标题栏组合控件

来源:互联网 发布:linux命令日志文件 编辑:程序博客网 时间:2024/05/23 00:08
标题栏布局
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:background="#db1010"    >    <TextView        android:id="@+id/ttv_back"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:textSize="20sp"        android:text="返回"        android:gravity="center"        android:layout_weight="1"        android:layout_marginTop="5dp"        android:clickable="true"/>    <TextView        android:layout_width="0dp"        android:layout_weight="3"        android:layout_height="wrap_content"        android:textSize="20sp"        android:text="那些花儿"        android:gravity="center"        android:layout_marginTop="5dp"/>    <TextView        android:id="@+id/ttv_intent"        android:layout_width="wrap_content"        android:layout_weight="1"        android:layout_height="wrap_content"        android:textSize="20sp"        android:text="图二"        android:gravity="center"        android:layout_marginTop="5dp"        android:clickable="true"/></LinearLayout>
自定义标题栏控件
import android.content.Context;import android.support.annotation.Nullable;import android.util.AttributeSet;import android.view.View;import android.widget.LinearLayout;import android.widget.TextView;/** * author:Created by WangZhiQiang on 2017/11/4. */public class TitleView extends LinearLayout{    private OnTitleClickListener listener;    interface OnTitleClickListener{        void onBack(View view);        void onIntent(View view);    }    public void setOnTitleClickListener(OnTitleClickListener listener){        if(listener!=null){            this.listener=listener;        }    }    public TitleView(Context context) {        this(context,null);    }    public TitleView(Context context, @Nullable AttributeSet attrs) {        this(context, attrs,0);    }    public TitleView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);        initView(context, attrs, defStyleAttr);    }    private void initView(Context context, AttributeSet attrs, int defStyleAttr) {        View.inflate(context, R.layout.layout, this);        final TextView ttvBack = (TextView) findViewById(R.id.ttv_back);        TextView ttvIntent = (TextView) findViewById(R.id.ttv_intent);        ttvBack.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View view) {                listener.onBack(view);            }        });        ttvIntent.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View view) {                listener.onIntent(view);            }        });    }}