自定义标题
public class TitleActivity extends LinearLayout { private TextView tv_title; public TitleActivity(Context context) { super(context,null); } public TitleActivity(final Context context, AttributeSet attrs) { super(context, attrs); //引入布局 LayoutInflater.from(context).inflate(R.layout.activity_title,this); Button btnBack=(Button)findViewById(R.id.btnBack); Button btnEdit=(Button)findViewById(R.id.btnEdit); btnBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { // ((Activity)getContext()).finish(); Toast.makeText(context,"点击返回,可在此处调用finish",Toast.LENGTH_SHORT).show(); } }); btnEdit.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { Toast.makeText(context,"我是提交按钮",Toast.LENGTH_SHORT).show(); } }); tv_title=(TextView)findViewById(R.id.tv_title); } //显示活的的标题 public void setTitle(String title) { if(!TextUtils.isEmpty(title)) { tv_title.setText(title); } } }
activity_titlt.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="50dp" android:background="#00ffff" > <Button android:id="@+id/btnBack" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="返回" android:layout_alignParentLeft="true" /> <TextView android:id="@+id/tv_title" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:gravity="center" android:text="标题" android:layout_centerInParent="true" /> <Button android:id="@+id/btnEdit" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="提交" android:layout_alignParentRight="true" /> </LinearLayout>
MainActivity
public class MainActivity extends AppCompatActivity { private TitleActivity titleActivity; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //隐藏系统的标题栏 android.support.v7.app.ActionBar actionBar=getSupportActionBar(); if(actionBar!=null) { actionBar.hide(); } // titleActivity=(TitleActivity)findViewById(R.id.titlelayout); } }
在主布局文件中引用
<....包名.....TitleActivity android:id="@+id/titlelayout" android:layout_width="match_parent" android:layout_height="wrap_content"> </...包名..TitleActivity>