我正在为我的 Activity 实现一个折叠工具栏。我想知道是否可以将导航箭头设置为折叠工具栏布局并设置 Onclick 监听器,这将带我到上一个 Activity 。我可以仅使用工具栏布局成功实现此类功能,如下所示
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar_details"
android:title="Disclaimer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#fff"
android:minHeight="56dp"
android:layout_alignParentTop="true"
app:theme="@style/ThemeOverlay.AppCompat.Light"/>
在 OnCreate 方法中,我使用
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_details);
setSupportActionBar(toolbar);
tutorProfile.this.setTitle(getIntent().getStringExtra("My Dashboard"));
toolbar.setNavigationIcon(R.drawable.ic_arrow_back_black_24dp);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent check = new Intent(CurrentActivity.this, PreviousActivity.class);
startActivity(check);
finish();
}
});
但是在折叠工具栏布局中如何实现相同的功能。这是 xml 布局
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing"
android:layout_width="match_parent"
android:layout_height="150dip"
android:fitsSystemWindows="true"
app:contentScrim="#784242"
app:expandedTitleMarginBottom="20dp"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
app:layout_collapseMode="parallax"
android:src="@drawable/feedback_draw"
android:contentDescription="@string/app_name"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="200dp" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="56dp"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
我搜索了几分钟但找不到任何解决方案。感谢您提前提供帮助。
最佳答案
为什么不简单地使用 toolbar.setDisplayHomeAsUpEnabled(true)
然后
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.itemId) {
android.R.id.home -> {
finish()
return true
}
}
return super.onOptionsItemSelected(item)
}
关于java - 如何在折叠工具栏中设置导航箭头并设置 Onclicklistener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57311600/