android 底部导航有一个 activity

android bottom navigation with one activity

我正在创建一个移动应用程序,在我的底部导航中我将有 4 个 图标。

我开始为每个图标使用不同的 activity,因为我将在一个图标的顶部添加一个滑动条,但不确定我是否可以使用片段来做到这一点。

我不确定我说的对不对,但我有可能吗? 只需使用一个 activity 和类似七个不同的片段来创建这个应用程序。 每个图标一个片段,但一个图标将包括滑动到 其他片段。

这可能吗?

是的,您可以通过在其中实施 VIEWPAGER 来做到这一点。这是相同的参考。

只需使用 viewpagertablayout,您就可以完成所有这些事情而无需编写太多代码。以下是程序: 您的主要布局:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="wrap_content">
  <android.support.v4.view.ViewPager
  android:id="@+id/pager"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
  </android.support.v4.view.ViewPager>
  <android.support.design.widget.TabLayout      android:id="@+id/tabDots"
  android:layout_alignParentBottom="true"
  android:layout_width="match_parent"
   android:layout_height="wrap_content"
  app:tabBackground="@drawable/tab_selector"      app:tabGravity="center"
  app:tabIndicatorHeight="0dp"/>
  </RelativeLayout>

在 activity 或片段中连接您的 UI 元素,如下所示: Java代码:

 mImageViewPager = (ViewPager) findViewById(R.id.pager); 
 TabLayout tabLayout = (TabLayout) findViewById(R.id.tabDots);      tabLayout.setupWithViewPager(mImageViewPager, true);

你可以开始了。

现在您可以在 TabLayout 中设置选项卡。并使用此选项卡操作您的 VIEWPAGER。

您需要在 drawable 文件夹中创建以下 xml 资源文件.. tab_indicator_selected.xml

 <?xml version="1.0" encoding="utf-8"?> 
 <layer-list      xmlns:android="http://schemas.android.com/apk/res/android">
  <item> 
 <shape android:innerRadius="0dp"      android:shape="ring"      android:thickness="4dp"      android:useLevel="false">
  <solid      android:color="@color/colorAccent"/>
  </shape>
  </item> 
 </layer-list>

tab_indicator_default.xml

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:innerRadius="0dp" android:shape="ring" android:thickness="2dp" android:useLevel="false"> <solid android:color="@android:color/darker_gray"/> </shape> </item> </layer-list>

tab_selector.xml

  <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/tab_indicator_selected" android:state_selected="true"/> <item android:drawable="@drawable/tab_indicator_default"/> </selector>