From de74e5ec3fbdab065e8b91240fa1944c4b3440c2 Mon Sep 17 00:00:00 2001
From: Administrator <123>
Date: Wed, 03 Nov 2021 07:41:03 +0000
Subject: [PATCH] 部分调整

---
 app/src/main/java/com/duqing/missions/ui/main/hall/SubHallFragment.java |   17 ++
 app/src/main/res/menu/bottom_nav_menu.xml                               |    4 
 app/src/main/java/com/duqing/missions/ui/main/hall/HallViewModel.java   |    6 
 app/src/main/res/layout/activity_vip.xml                                |    1 
 app/src/main/java/com/duqing/missions/base/FragmentAdapter.java         |   49 ++++++++
 app/src/main/res/layout/fragment_sub_hall.xml                           |   48 +------
 /dev/null                                                               |   25 ----
 app/src/main/res/layout/fragment_hall.xml                               |   33 +++++
 app/src/main/java/com/duqing/missions/ui/main/hall/HallFragment.java    |   49 ++++++++
 app/src/main/java/com/duqing/missions/ui/main/home/HomeFragment.java    |    4 
 app/src/main/res/color/radio_text.xml                                   |    4 
 app/src/main/java/com/duqing/missions/ui/main/mine/MineFragment.java    |   10 
 app/src/main/res/layout/activity_main.xml                               |   24 ++-
 app/src/main/res/layout/home_item_top.xml                               |    2 
 app/src/main/java/com/duqing/missions/MainActivity.java                 |   41 +++++-
 app/src/main/res/layout/fragment_mine.xml                               |    2 
 app/src/main/java/com/duqing/missions/ui/main/mine/MineViewModel.java   |    6 
 17 files changed, 220 insertions(+), 105 deletions(-)

diff --git a/app/src/main/java/com/duqing/missions/MainActivity.java b/app/src/main/java/com/duqing/missions/MainActivity.java
index d0ce711..f903b3b 100644
--- a/app/src/main/java/com/duqing/missions/MainActivity.java
+++ b/app/src/main/java/com/duqing/missions/MainActivity.java
@@ -1,21 +1,48 @@
 package com.duqing.missions;
 
-import androidx.navigation.NavController;
-import androidx.navigation.Navigation;
-import androidx.navigation.ui.NavigationUI;
+import androidx.viewpager2.widget.ViewPager2;
 
 import com.duqing.missions.base.BaseActivity;
+import com.duqing.missions.base.FragmentAdapter;
 import com.duqing.missions.databinding.ActivityMainBinding;
+import com.duqing.missions.ui.main.hall.HallFragment;
+import com.duqing.missions.ui.main.home.HomeFragment;
+import com.duqing.missions.ui.main.mine.MineFragment;
 
 public class MainActivity extends BaseActivity<ActivityMainBinding> {
 
 
     @Override
     public void initViews() {
-        // Passing each menu ID as a set of Ids because each
-        // menu should be considered as top level destinations.
-        NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main);
-        NavigationUI.setupWithNavController(binding.navView, navController);
+        setStatusBarBgColor(R.color.red);
+        setStatusBarTextColor(false);
+        binding.navView.setOnItemSelectedListener(item -> {
+            for(int i = 0 ; i < binding.navView.getMenu().size() ; i ++){
+                if(item.getItemId() == binding.navView.getMenu().getItem(i).getItemId()){
+                    binding.viewPager2.setCurrentItem(i);
+                    return true;
+                }
+            }
+            return false;
+        });
+        final FragmentAdapter fragmentAdapter = new FragmentAdapter(this);
+        fragmentAdapter.addFragment(new HomeFragment());
+        fragmentAdapter.addFragment(new HallFragment());
+        fragmentAdapter.addFragment(new MineFragment());
+        //设置当前可见Item左右可见page数,次范围内不会被销毁
+        //禁用预加载
+        binding.viewPager2.setOffscreenPageLimit(ViewPager2.OFFSCREEN_PAGE_LIMIT_DEFAULT);
+        binding.viewPager2.setAdapter(fragmentAdapter);
+        binding.viewPager2.setCurrentItem(0);
+        binding.viewPager2.setUserInputEnabled(false); //true:滑动,false:禁止滑动
+        binding.viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
+            @Override
+            public void onPageSelected(int position) {
+                binding.navView.getMenu().getItem(position).setChecked(true);
+            }
+        });
+        binding.viewPager2.setCurrentItem(0);//设置默认第
     }
 
+
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/duqing/missions/base/FragmentAdapter.java b/app/src/main/java/com/duqing/missions/base/FragmentAdapter.java
new file mode 100644
index 0000000..9a4f646
--- /dev/null
+++ b/app/src/main/java/com/duqing/missions/base/FragmentAdapter.java
@@ -0,0 +1,49 @@
+package com.duqing.missions.base;
+
+import androidx.annotation.NonNull;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
+import androidx.viewpager2.adapter.FragmentStateAdapter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by Administrator on 2021/11/3 0003.
+ */
+public class FragmentAdapter extends FragmentStateAdapter {
+
+    private List<BaseFragment> fragments = new ArrayList<>();
+
+    public FragmentAdapter(@NonNull FragmentActivity fragmentActivity) {
+        super(fragmentActivity);
+    }
+
+    public void setFragments(List<BaseFragment> fragments) {
+        this.fragments = fragments;
+    }
+
+    public void removeFragment(BaseFragment fragment){
+        this.fragments.remove(fragment);
+    }
+
+    public void removeFragment(int index){
+        this.fragments.remove(index);
+    }
+
+    public void addFragment(BaseFragment fragment){
+        fragments.add(fragment);
+    }
+
+
+    @NonNull
+    @Override
+    public Fragment createFragment(int position) {
+        return fragments.get(position);
+    }
+
+    @Override
+    public int getItemCount() {
+        return fragments.size();
+    }
+}
diff --git a/app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardFragment.java b/app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardFragment.java
deleted file mode 100644
index 0f03177..0000000
--- a/app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardFragment.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.duqing.missions.ui.main.dashboard;
-
-import androidx.annotation.Nullable;
-import androidx.lifecycle.Observer;
-import androidx.lifecycle.ViewModelProvider;
-
-import com.duqing.missions.base.BaseFragment;
-import com.duqing.missions.databinding.FragmentDashboardBinding;
-
-public class DashboardFragment extends BaseFragment<FragmentDashboardBinding> {
-
-    private DashboardViewModel dashboardViewModel;
-
-    @Override
-    public void initViews() {
-        dashboardViewModel = new ViewModelProvider(this).get(DashboardViewModel.class);
-        dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
-            @Override
-            public void onChanged(@Nullable String s) {
-            }
-        });
-    }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/duqing/missions/ui/main/hall/HallFragment.java b/app/src/main/java/com/duqing/missions/ui/main/hall/HallFragment.java
new file mode 100644
index 0000000..325e471
--- /dev/null
+++ b/app/src/main/java/com/duqing/missions/ui/main/hall/HallFragment.java
@@ -0,0 +1,49 @@
+package com.duqing.missions.ui.main.hall;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
+import androidx.viewpager2.widget.ViewPager2;
+
+import com.duqing.missions.base.BaseFragment;
+import com.duqing.missions.base.FragmentAdapter;
+import com.duqing.missions.databinding.FragmentHallBinding;
+import com.google.android.material.tabs.TabLayout;
+import com.google.android.material.tabs.TabLayoutMediator;
+
+public class HallFragment extends BaseFragment<FragmentHallBinding> {
+
+    private HallViewModel hallViewModel;
+
+    @Override
+    public void initViews() {
+        hallViewModel = new ViewModelProvider(this).get(HallViewModel.class);
+        hallViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
+            @Override
+            public void onChanged(@Nullable String s) {
+            }
+        });
+        final String[] titles = new String[]{"全部","人气","简单","高价"};
+        final FragmentAdapter fragmentAdapter = new FragmentAdapter(activity);
+        fragmentAdapter.addFragment(new SubHallFragment());
+        fragmentAdapter.addFragment(new SubHallFragment());
+        fragmentAdapter.addFragment(new SubHallFragment());
+        fragmentAdapter.addFragment(new SubHallFragment());
+        //设置当前可见Item左右可见page数,次范围内不会被销毁
+        //禁用预加载
+        binding.viewPager2.setOffscreenPageLimit(ViewPager2.OFFSCREEN_PAGE_LIMIT_DEFAULT);
+        binding.viewPager2.setAdapter(fragmentAdapter);
+        binding.viewPager2.setCurrentItem(0);
+        binding.viewPager2.setUserInputEnabled(false); //true:滑动,false:禁止滑动
+        TabLayoutMediator mediator = new TabLayoutMediator(binding.tablayout, binding.viewPager2, new TabLayoutMediator.TabConfigurationStrategy() {
+            @Override
+            public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) {
+                tab.setText(titles[position]);
+            }
+        });
+        mediator.attach();
+
+
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardViewModel.java b/app/src/main/java/com/duqing/missions/ui/main/hall/HallViewModel.java
similarity index 71%
rename from app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardViewModel.java
rename to app/src/main/java/com/duqing/missions/ui/main/hall/HallViewModel.java
index a0f3ffe..ecbe20f 100644
--- a/app/src/main/java/com/duqing/missions/ui/main/dashboard/DashboardViewModel.java
+++ b/app/src/main/java/com/duqing/missions/ui/main/hall/HallViewModel.java
@@ -1,14 +1,14 @@
-package com.duqing.missions.ui.main.dashboard;
+package com.duqing.missions.ui.main.hall;
 
 import androidx.lifecycle.LiveData;
 import androidx.lifecycle.MutableLiveData;
 import androidx.lifecycle.ViewModel;
 
-public class DashboardViewModel extends ViewModel {
+public class HallViewModel extends ViewModel {
 
     private MutableLiveData<String> mText;
 
-    public DashboardViewModel() {
+    public HallViewModel() {
         mText = new MutableLiveData<>();
         mText.setValue("This is dashboard fragment");
     }
diff --git a/app/src/main/java/com/duqing/missions/ui/main/hall/SubHallFragment.java b/app/src/main/java/com/duqing/missions/ui/main/hall/SubHallFragment.java
new file mode 100644
index 0000000..3a3c00e
--- /dev/null
+++ b/app/src/main/java/com/duqing/missions/ui/main/hall/SubHallFragment.java
@@ -0,0 +1,17 @@
+package com.duqing.missions.ui.main.hall;
+
+import com.duqing.missions.base.BaseFragment;
+import com.duqing.missions.databinding.FragmentSubHallBinding;
+
+/**
+ * Created by Administrator on 2021/11/3 0003.
+ */
+public class SubHallFragment extends BaseFragment<FragmentSubHallBinding> {
+
+
+
+    @Override
+    public void initViews() {
+
+    }
+}
diff --git a/app/src/main/java/com/duqing/missions/ui/main/home/HomeFragment.java b/app/src/main/java/com/duqing/missions/ui/main/home/HomeFragment.java
index f4a1f9f..346c357 100644
--- a/app/src/main/java/com/duqing/missions/ui/main/home/HomeFragment.java
+++ b/app/src/main/java/com/duqing/missions/ui/main/home/HomeFragment.java
@@ -6,7 +6,6 @@
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.ImageView;
 import android.widget.TextView;
 
 import androidx.annotation.NonNull;
@@ -40,12 +39,11 @@
     @Override
     public void initViews() {
         homeViewModel = new ViewModelProvider(this).get(HomeViewModel.class);
-        binding.imgSearch.setOnClickListener(v -> startActivity(new Intent(getContext(), LoginActivity.class)));
+        binding.textSearch.setOnClickListener(v -> startActivity(new Intent(getContext(), LoginActivity.class)));
         final SmartRefreshLayout smartRefresh = binding.smartRefresh;
         smartRefresh.setRefreshHeader(new ClassicsHeader(getContext()));
         smartRefresh.setRefreshFooter(new ClassicsFooter(getContext()));
         final  TextView textView = binding.textRecommend;
-        final ImageView imgSearch = binding.imgSearch;
         RecyclerView recyclerClassify = binding.recyclerClassify;
         RecyclerView recyclerTop = binding.recyclerTop;
         final RecyclerView recyclerRecommend = binding.recyclerRecommend;
diff --git a/app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsFragment.java b/app/src/main/java/com/duqing/missions/ui/main/mine/MineFragment.java
similarity index 61%
rename from app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsFragment.java
rename to app/src/main/java/com/duqing/missions/ui/main/mine/MineFragment.java
index 38fa92a..88e886b 100644
--- a/app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsFragment.java
+++ b/app/src/main/java/com/duqing/missions/ui/main/mine/MineFragment.java
@@ -1,20 +1,20 @@
-package com.duqing.missions.ui.main.notifications;
+package com.duqing.missions.ui.main.mine;
 
 import androidx.annotation.Nullable;
 import androidx.lifecycle.Observer;
 import androidx.lifecycle.ViewModelProvider;
 
 import com.duqing.missions.base.BaseFragment;
-import com.duqing.missions.databinding.FragmentNotificationsBinding;
+import com.duqing.missions.databinding.FragmentMineBinding;
 
-public class NotificationsFragment extends BaseFragment<FragmentNotificationsBinding> {
+public class MineFragment extends BaseFragment<FragmentMineBinding> {
 
-    private NotificationsViewModel notificationsViewModel;
+    private MineViewModel notificationsViewModel;
 
 
     @Override
     public void initViews() {
-        notificationsViewModel = new ViewModelProvider(this).get(NotificationsViewModel.class);
+        notificationsViewModel = new ViewModelProvider(this).get(MineViewModel.class);
         notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
             @Override
             public void onChanged(@Nullable String s) {
diff --git a/app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsViewModel.java b/app/src/main/java/com/duqing/missions/ui/main/mine/MineViewModel.java
similarity index 69%
rename from app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsViewModel.java
rename to app/src/main/java/com/duqing/missions/ui/main/mine/MineViewModel.java
index ed7c442..35692a1 100644
--- a/app/src/main/java/com/duqing/missions/ui/main/notifications/NotificationsViewModel.java
+++ b/app/src/main/java/com/duqing/missions/ui/main/mine/MineViewModel.java
@@ -1,14 +1,14 @@
-package com.duqing.missions.ui.main.notifications;
+package com.duqing.missions.ui.main.mine;
 
 import androidx.lifecycle.LiveData;
 import androidx.lifecycle.MutableLiveData;
 import androidx.lifecycle.ViewModel;
 
-public class NotificationsViewModel extends ViewModel {
+public class MineViewModel extends ViewModel {
 
     private MutableLiveData<String> mText;
 
-    public NotificationsViewModel() {
+    public MineViewModel() {
         mText = new MutableLiveData<>();
         mText.setValue("This is notifications fragment");
     }
diff --git a/app/src/main/res/color/radio_text.xml b/app/src/main/res/color/radio_text.xml
index dabde60..e2ff57b 100644
--- a/app/src/main/res/color/radio_text.xml
+++ b/app/src/main/res/color/radio_text.xml
@@ -1,7 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<selector xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" tools:ignore="MissingDefaultResource">
-    <item android:state_enabled="true" android:color="@color/black_4"  />
+<selector   xmlns:android="http://schemas.android.com/apk/res/android"  >
     <item android:state_checked="true" android:color="@color/sky" />
-    <item android:state_pressed="true" android:color="@color/white" />
     <item  android:color="@color/black"  />
 </selector>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 177d7d2..9db3053 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
+<androidx.constraintlayout.widget.ConstraintLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/container"
@@ -7,21 +7,23 @@
     android:layout_height="match_parent"
     android:orientation="vertical">
 
-    <fragment
-        android:id="@+id/nav_host_fragment_activity_main"
-        android:name="androidx.navigation.fragment.NavHostFragment"
+    <androidx.viewpager2.widget.ViewPager2
+        android:id="@+id/view_pager_2"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:layout_weight="1"
-        app:defaultNavHost="true"
-        app:navGraph="@navigation/mobile_navigation"
-    />
-
+        android:layout_height="0dp"
+        app:layout_constraintTop_toTopOf="parent"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintBottom_toTopOf="@id/nav_view" />
     <com.google.android.material.bottomnavigation.BottomNavigationView
         android:id="@+id/nav_view"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:background="?android:attr/windowBackground"
+        app:layout_constraintTop_toBottomOf="@id/view_pager_2"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintBottom_toBottomOf="parent"
         app:menu="@menu/bottom_nav_menu"/>
 
-</LinearLayout>
\ No newline at end of file
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_vip.xml b/app/src/main/res/layout/activity_vip.xml
index ca58f37..2b924cd 100644
--- a/app/src/main/res/layout/activity_vip.xml
+++ b/app/src/main/res/layout/activity_vip.xml
@@ -38,7 +38,6 @@
 
 
     <include layout="@layout/fragment_employer_vip"
-        android:id="@+id/nav_host_fragment_activity_main"
         android:layout_width="match_parent"
         android:layout_height="0dp"
         app:defaultNavHost="true"
diff --git a/app/src/main/res/layout/fragment_hall.xml b/app/src/main/res/layout/fragment_hall.xml
new file mode 100644
index 0000000..de2e2f9
--- /dev/null
+++ b/app/src/main/res/layout/fragment_hall.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".ui.main.hall.HallFragment" >
+
+    <com.google.android.material.tabs.TabLayout
+        android:id="@+id/tablayout"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@color/red"
+        app:tabMaxWidth="0dp"
+        app:tabIndicatorFullWidth="false"
+        app:tabSelectedTextColor="@color/white"
+        app:tabTextColor="@color/enable"
+        app:tabIndicatorColor="@color/white"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <androidx.viewpager2.widget.ViewPager2
+        android:id="@+id/view_pager_2"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:nestedScrollingEnabled="false"
+        app:layout_constraintTop_toBottomOf="@id/tablayout"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"
+        app:layout_constraintBottom_toBottomOf="parent" />
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_notifications.xml b/app/src/main/res/layout/fragment_mine.xml
similarity index 99%
rename from app/src/main/res/layout/fragment_notifications.xml
rename to app/src/main/res/layout/fragment_mine.xml
index 734378a..988c478 100644
--- a/app/src/main/res/layout/fragment_notifications.xml
+++ b/app/src/main/res/layout/fragment_mine.xml
@@ -6,7 +6,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@color/white_2"
-    tools:context=".ui.main.notifications.NotificationsFragment">
+    tools:context=".ui.main.mine.MineFragment">
 
     <androidx.constraintlayout.widget.ConstraintLayout
         android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/fragment_dashboard.xml b/app/src/main/res/layout/fragment_sub_hall.xml
similarity index 63%
rename from app/src/main/res/layout/fragment_dashboard.xml
rename to app/src/main/res/layout/fragment_sub_hall.xml
index f1fff12..d95764a 100644
--- a/app/src/main/res/layout/fragment_dashboard.xml
+++ b/app/src/main/res/layout/fragment_sub_hall.xml
@@ -1,39 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
-<androidx.constraintlayout.widget.ConstraintLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    tools:context=".ui.main.dashboard.DashboardFragment" >
+    xmlns:app="http://schemas.android.com/apk/res-auto">
 
-    <com.google.android.material.tabs.TabLayout
-        android:id="@+id/tablayout"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        app:layout_constraintLeft_toLeftOf="parent"
-        app:layout_constraintRight_toRightOf="parent"
-        app:layout_constraintTop_toTopOf="parent">
-
-        <com.google.android.material.tabs.TabItem
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="全部" />
-
-        <com.google.android.material.tabs.TabItem
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="人气" />
-
-        <com.google.android.material.tabs.TabItem
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="简单" />
-        <com.google.android.material.tabs.TabItem
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="高价" />
-    </com.google.android.material.tabs.TabLayout>
 
     <RadioGroup
         android:id="@+id/radio_group"
@@ -41,7 +11,7 @@
         android:layout_height="40dp"
         app:layout_constraintHorizontal_chainStyle="spread"
         app:layout_constraintHorizontal_weight="4"
-        app:layout_constraintTop_toBottomOf="@id/tablayout"
+        app:layout_constraintTop_toTopOf="parent"
         app:layout_constraintLeft_toLeftOf="parent"
         app:layout_constraintRight_toLeftOf="@id/txt_classify"
         android:orientation="horizontal">
@@ -88,7 +58,7 @@
         android:gravity="center"
         android:textColor="@color/radio_text"
         app:layout_constraintRight_toRightOf="parent"
-        app:layout_constraintTop_toBottomOf="@id/tablayout"
+        app:layout_constraintTop_toTopOf="parent"
         app:layout_constraintLeft_toRightOf="@id/radio_group"
         app:layout_constraintHorizontal_weight="1"
         app:layout_constraintHorizontal_chainStyle="spread" />
@@ -99,13 +69,11 @@
         android:layout_height="0.5dp"
         android:background="@color/gray"
         app:layout_constraintTop_toBottomOf="@id/radio_group"
-        app:layout_constraintLeft_toLeftOf="parent"/>
-
-    <FrameLayout
-        android:id="@+id/framelayout"
+        app:layout_constraintLeft_toLeftOf="parent"
+        app:layout_constraintRight_toRightOf="parent"/>
+    <include layout="@layout/refresh_recycler"
         android:layout_width="match_parent"
         android:layout_height="0dp"
         app:layout_constraintTop_toBottomOf="@id/view"
-        app:layout_constraintBottom_toBottomOf="parent"
-        app:layout_constraintLeft_toLeftOf="parent" />
+        app:layout_constraintBottom_toBottomOf="parent"/>
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/home_item_top.xml b/app/src/main/res/layout/home_item_top.xml
index 218b2fe..dfb653c 100644
--- a/app/src/main/res/layout/home_item_top.xml
+++ b/app/src/main/res/layout/home_item_top.xml
@@ -4,7 +4,7 @@
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
-    android:background="@drawable/bg_border_gray_corner"
+    android:background="@drawable/bg_white_corner"
     android:layout_marginLeft="5dp"
     android:layout_marginTop="5dp"
     android:layout_marginRight="5dp"
diff --git a/app/src/main/res/menu/bottom_nav_menu.xml b/app/src/main/res/menu/bottom_nav_menu.xml
index 52321c6..c3f23ac 100644
--- a/app/src/main/res/menu/bottom_nav_menu.xml
+++ b/app/src/main/res/menu/bottom_nav_menu.xml
@@ -7,12 +7,12 @@
         android:title="@string/title_home"/>
 
     <item
-        android:id="@+id/navigation_dashboard"
+        android:id="@+id/navigation_hall"
         android:icon="@drawable/ic_dashboard_black_24dp"
         android:title="@string/title_dashboard"/>
 
     <item
-        android:id="@+id/navigation_notifications"
+        android:id="@+id/navigation_mine"
         android:icon="@drawable/ic_notifications_black_24dp"
         android:title="@string/title_notifications"/>
 
diff --git a/app/src/main/res/navigation/mobile_navigation.xml b/app/src/main/res/navigation/mobile_navigation.xml
deleted file mode 100644
index ebb9ec8..0000000
--- a/app/src/main/res/navigation/mobile_navigation.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<navigation xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:id="@+id/mobile_navigation"
-    app:startDestination="@+id/navigation_home">
-
-    <fragment
-        android:id="@+id/navigation_home"
-        android:name="com.duqing.missions.ui.main.home.HomeFragment"
-        android:label="@string/title_home"
-        tools:layout="@layout/fragment_home" />
-
-    <fragment
-        android:id="@+id/navigation_dashboard"
-        android:name="com.duqing.missions.ui.main.dashboard.DashboardFragment"
-        android:label="@string/title_dashboard"
-        tools:layout="@layout/fragment_dashboard" />
-
-    <fragment
-        android:id="@+id/navigation_notifications"
-        android:name="com.duqing.missions.ui.main.notifications.NotificationsFragment"
-        android:label="@string/title_notifications"
-        tools:layout="@layout/fragment_notifications" />
-</navigation>
\ No newline at end of file

--
Gitblit v1.9.1