我的Activity有一个列表,想点击ActionBar后列表滚到最顶部,想问下如何给ActionBar添加点击事件。不用自定义的ActionBar,就用原生的。我试过给ActionBar添加一个CustomView,给Customview添加点击事件,是可行的。但是Customview要不太小无法撑慢整个ActionBar的高度,如果设置太大则会覆盖掉左上角的标题,求解。
如你所说,用CustomView
。
layout:
<?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="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:textColor="#FFF"
android:text="我才是标题" />
</LinearLayout>
部分代码:
View customView = LayoutInflater.from(this).inflate(R.layout.back, new LinearLayout(this), false);
getActionBar().setDisplayShowCustomEnabled(true);
getActionBar().setCustomView(customView);
customView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "....", 10000).show();
}
});
我自己测试过,暂无出现你所说的问题。