小编Lua*_* Ho的帖子

findFragmentById()和findFragmentByTag()

我创建了一个Fragment来显示我的Recycler视图.所以我使用方法findFragmentById()来查找我的xml文件.问题是每次我旋转屏幕时,它都会在另一个上面再创建一个回收站视图堆栈.这是我的代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ListFragment savedFragment = (ListFragment) getSupportFragmentManager().findFragmentById(R.id.list_recyclerview);

    if(savedFragment == null)
    {
        ListFragment fragment  = new ListFragment();
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.add(R.id.place_holder,fragment);
        fragmentTransaction.commit();

    }
}
Run Code Online (Sandbox Code Playgroud)

但是当我使用findFragmentByTag()方法时 ,它并没有发生.

愿任何人向我解释这两种方法有什么区别?

android fragment

11
推荐指数
1
解决办法
2万
查看次数

删除android中的底部导航视图文本

我为我的应用程序使用底部导航视图,并希望删除图标下的文本.我在互联网上寻找它但仍然无法找到解决方案.有没有人用来处理这个请给我你的解决方案.

在此输入图像描述

我想要的就像这样:

在此输入图像描述

我的代码在这里:主要布局包含recyclerview和bottomnavigationview:

<LinearLayout
    android:weightSum="10"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <android.support.v7.widget.RecyclerView
        android:layout_marginTop="20dp"
        android:layout_weight="8.5"
        android:id="@+id/recyclerview_menu"
        android:layout_width="match_parent"
        android:layout_height="0dp">

    </android.support.v7.widget.RecyclerView>
    <android.support.design.widget.BottomNavigationView
        android:background="@color/whiteColor"
        android:id="@+id/bottom_navigation_bar"
        android:layout_weight="1.5"
        app:menu="@menu/menu_bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="0dp">

    </android.support.design.widget.BottomNavigationView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这是bottomnavigation菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
    android:id="@+id/action_favorites"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Home"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_schedules"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Search"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_music"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Save"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/action_me"
    android:enabled="true"
    android:icon="@drawable/ic_search"
    android:title="Me"
    app:showAsAction="ifRoom" />
Run Code Online (Sandbox Code Playgroud)

在MainActivity中:

    mBottomBar = (BottomNavigationView) 
    findViewById(R.id.bottom_navigation_bar);
    disableShiftMode(mBottomBar);

    public void disableShiftMode(BottomNavigationView view) {
    BottomNavigationMenuView menuView = (BottomNavigationMenuView) view.getChildAt(0);
    try {
        Field shiftingMode = menuView.getClass().getDeclaredField("mShiftingMode");
        shiftingMode.setAccessible(true);
        shiftingMode.setBoolean(menuView, …
Run Code Online (Sandbox Code Playgroud)

android bottomnavigationview

6
推荐指数
2
解决办法
7062
查看次数

标签 统计

android ×2

bottomnavigationview ×1

fragment ×1