向上导航以在另一个片段之上构建一个片段

时间:2019-01-31 16:51:42

标签: android android-fragments kotlin navigationbar

我有一个FragmentX,我必须提供导航,因此我正在使用下面的代码。但是问题是这个片段不是直接在Activity的顶部,而是另一个片段(然后在Activity的顶部) 如果我应用下面的代码,的确确实可以导航到fragmentX,也可以导航至以下fragment(以及下面的其他tab片段) 我只想向FragmentX提供向上导航。

我知道这不是一个好的架构,但是我无法更改

       val view = container?.inflate(R.layout.fragment_entries_list)
       val actionBar = activity.supportActionBar

       actionBar?.apply {
           elevation = .0f
           setDisplayHomeAsUpEnabled(true)
       }



1 个答案:

答案 0 :(得分:0)

如果只想让FragmentX上的setDisplayHomeAsUpEnabled(true)不在活动的其他片段上,那么一种方法就是FragmentX的onDestroy()方法或userVisibleHint方法上的 setDisplayHomeAsUpEnabled(false)

>
public class FragmentX extends Fragment {
    @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if ( !isVisibleToUser ) {
              //setting it as false
              setDisplayHomeAsUpEnabled(false);
        }

    }
}