片段 Activity 显示后退按钮
Fragment Activity Display Back Button
我搜索了解如何在继承自 FragmentActivity 的 class 中显示后退按钮,
public class GoogleMapsActivity extends FragmentActivity
我知道有 onBackPressed() 方法可以覆盖,但我不知道如何显示后退按钮
@Override
public void onBackPressed() {
}
我试过这个方法: 但它不起作用,
感谢您的回答
试试这个:-
((AppCompatActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
((AppCompatActivity)getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
为了后退按钮工作..使用这个:-
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == android.R.id.home) {
super.onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
我和你有同样的问题。我已经使用 ((AppCompatActivity)getApplicationContext()).setSupportActionBar(toolbar);
但总是越来越接近。
然后我的解决方案是在布局中创建我自己的工具栏
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/overflow_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="?attr/selectableItemBackgroundBorderless"
android:clickable="true"
app:srcCompat="?attr/homeAsUpIndicator" />
<TextView
android:id="@+id/textToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/overflow_back"
android:paddingLeft="32dp"
android:textSize="18sp"
android:textStyle="bold"
android:layout_toRightOf="@+id/overflow_back"
android:text="Toolbar Title"
android:textColor="@android:color/white" />
</RelativeLayout> </android.support.v7.widget.Toolbar>
overflow_back
backbutton
,textToolbar
title
。
在你的 activity:
imageBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
onBackPressed();
}
});
我搜索了解如何在继承自 FragmentActivity 的 class 中显示后退按钮,
public class GoogleMapsActivity extends FragmentActivity
我知道有 onBackPressed() 方法可以覆盖,但我不知道如何显示后退按钮
@Override
public void onBackPressed() {
}
我试过这个方法:
试试这个:-
((AppCompatActivity)getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
((AppCompatActivity)getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
为了后退按钮工作..使用这个:-
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == android.R.id.home) {
super.onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
我和你有同样的问题。我已经使用 ((AppCompatActivity)getApplicationContext()).setSupportActionBar(toolbar);
但总是越来越接近。
然后我的解决方案是在布局中创建我自己的工具栏
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/overflow_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="?attr/selectableItemBackgroundBorderless"
android:clickable="true"
app:srcCompat="?attr/homeAsUpIndicator" />
<TextView
android:id="@+id/textToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/overflow_back"
android:paddingLeft="32dp"
android:textSize="18sp"
android:textStyle="bold"
android:layout_toRightOf="@+id/overflow_back"
android:text="Toolbar Title"
android:textColor="@android:color/white" />
</RelativeLayout> </android.support.v7.widget.Toolbar>
overflow_back
backbutton
,textToolbar
title
。
在你的 activity:
imageBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
onBackPressed();
}
});