我想使用工具栏上的“后退”图标,使用“后退”按钮从片段转到Activity。
片段是我的导航抽屉项,活动是我的MainActivity。我该怎么做呢?
rbl8hiat1#
您可以使用app:navigationIcon="?attr/homeAsUpIndicator"作为后退导航图标。
app:navigationIcon="?attr/homeAsUpIndicator"
<android.support.v7.widget.Toolbar android:id="@+id/toolbarId" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:navigationIcon="?attr/homeAsUpIndicator"/>
对于导航:
Toolbar toolbar = (ToolBar) getActivity().findViewById(R.id.toolbarId); toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { getActivity().onBackPressed(); } });
edqdpe6u2#
在您的片段onCreateView中调用此方法
public void showBackButton() { if (getActivity() instanceof ActionBarActivity) { ((ActionBarActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true); } }
yyyllmsg3#
试试这个对我有用的方法:1.在XML中:
<android.support.v7.widget.Toolbar android:id="@+id/profileToolbar" android:layout_width="match_parent" android:layout_height="wrap_content">
1.在drawable文件夹中创建一个后退箭头图标。将其命名为“ic_back_button”。不确定如何创建:-只需右键单击drawable〉new〉ImageAsset〉Clip Art〉Search back〉select〉OK〉Finish(不要忘记更改名称)。1.然后在onCreateView中的片段内部:
Toolbar toolbar = view.findViewById(R.id.profileToolbar); toolbar.setNavigationIcon(R.drawable.ic_back_button); toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getActivity().onBackPressed(); } });
6yt4nkrj4#
如果您想从片段返回到以前的位置,它可能会有所帮助。使用navController将其放入类中。
@Override public boolean onSupportNavigateUp() { navController.navigateUp(); return super.onSupportNavigateUp(); }
不要忘记实现相关依赖项,如导航和导航UI。
eivnm1vs5#
将此xml代码添加到片段中,然后尝试
<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="#FFFFFF" android:layout_gravity="center" android:gravity="center_horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Title Here" android:typeface="serif" android:layout_gravity="center" android:id="@+id/toolbar_title" android:textSize="20sp" android:textColor="@android:color/black"/> <ImageView android:id="@+id/ivback_water" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerVertical="true" android:padding="15dp" android:scaleType="fitCenter" android:layout_gravity="left" android:background="@drawable/ic_arrow_back_black_24dp" /> </android.support.v7.widget.Toolbar>
ef1yzkbh6#
你可以很容易地做到这一点,如果你正在使用一个自定义后退按钮,放置在您的自定义顶部应用程序栏,在按钮的onClick()函数,你可以调用.. getActivity().onBackPressed();它会工作一样,如果你已经点击了Android导航的后退按钮...
onClick()
getActivity().onBackPressed();
6条答案
按热度按时间rbl8hiat1#
您可以使用
app:navigationIcon="?attr/homeAsUpIndicator"
作为后退导航图标。对于导航:
edqdpe6u2#
在您的片段onCreateView中调用此方法
yyyllmsg3#
试试这个对我有用的方法:
1.在XML中:
1.在drawable文件夹中创建一个后退箭头图标。将其命名为“ic_back_button”。不确定如何创建:-
只需右键单击drawable〉new〉ImageAsset〉Clip Art〉Search back〉select〉OK〉Finish(不要忘记更改名称)。
1.然后在onCreateView中的片段内部:
6yt4nkrj4#
如果您想从片段返回到以前的位置,它可能会有所帮助。
使用navController将其放入类中。
不要忘记实现相关依赖项,如导航和导航UI。
eivnm1vs5#
将此xml代码添加到片段中,然后尝试
ef1yzkbh6#
你可以很容易地做到这一点,如果你正在使用一个自定义后退按钮,放置在您的自定义顶部应用程序栏,在按钮的
onClick()
函数,你可以调用..getActivity().onBackPressed();
它会工作一样,如果你已经点击了Android导航的后退按钮...