国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android使用ViewPager實現頂部tabbar切換界面

2019-10-22 18:28:58
字體:
來源:轉載
供稿:網友

類似的功能可以看看:

使用RadioGroup實現底部導航欄

進入正題

效果圖:

ViewPager,tabbar,切換

注:PagerSlidingTabStrip為自定義控件,用于切換界面,此處不便貼出代碼

1.主界面xml布局中添加ViewPager控件:

 <android.support.v4.view.ViewPager  android:id="@+id/pager_view"  android:layout_width="match_parent"  android:layout_height="match_parent" />

2.主界面的activity代碼:

FrOrderList和FrFoodList分別為內部的fragment頁面

String[] tabs = {"堅果", "肉脯", "果凍"};  private MyPagerAdpater adpater;  //為ViewPager添加Adpater  adpater = new MyPagerAdpater(getSupportFragmentManager());  pagerView.setOffscreenPageLimit(4);  pagerView.setAdapter(adpater);class MyPagerAdpater extends FragmentPagerAdapter {  public MyPagerAdpater(FragmentManager manager) {   super(manager);  }  @Override  public Fragment getItem(int position) {   switch (position){    case 0:     return FrOrderList.newInstance( 0);    case 1:     return FrFoodList.newInstance( 1);    case 2:     return FrOrderList.newInstance( 2);   }   return null;  }  @Override  public CharSequence getPageTitle(int position) {   return tabs[position];  }  @Override  public int getCount() {   return tabs.length;  } }

3.內部fragment頁面:
其布局只是為了純顯示,所以只添加了一個textview

<TextView  android:id="@+id/tv_content"  android:gravity="center"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:textSize="32sp"  android:textColor="#63B8FF"  android:text="999"/>

activity代碼:

整個流程為:

public static FrFoodList newInstance(int mState) –》public void onCreate(@Nullable Bundle savedInstanceState) –》public View onCreateView –》public void initView()public class FrFoodList extends Fragment { TextView tvContent; private static String DATAKEY = "STATE"; private int mState = 0; public static FrFoodList newInstance(int mState) { FrFoodList frFoodList = new FrFoodList(); Bundle bundle = new Bundle(); bundle.putInt( DATAKEY, mState); frFoodList.setArguments(bundle); return frFoodList; } @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); mState = getArguments().getInt( DATAKEY); } @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_food_list, null); tvContent = (TextView) view.findViewById(R.id.tv_content);  initView(); return view; } public void initView(){ switch ( mState ){  case 0:  tvContent.setText( "一大波堅果即將來襲~~~" );  break;  case 1:  tvContent.setText( "好吃又香,美味抵擋不住(^_^)" );  break;  case 2:  tvContent.setText( "浪漫氣息,粉嫩可愛(*_*)" );  break; } }}

FrOrderList的寫法和這個類似。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双桥区| 彭阳县| 酒泉市| 玉屏| 宜宾县| 泗阳县| 金湖县| 阿瓦提县| 康定县| 邢台县| 方正县| 龙南县| 颍上县| 长汀县| 广德县| 砚山县| 教育| 永顺县| 武城县| 荣成市| 通州市| 潞城市| 和平县| 富蕴县| 巴彦县| 互助| 龙门县| 金寨县| 福建省| 枝江市| 彭山县| 保靖县| 平山县| 柯坪县| 儋州市| 武安市| 蒙城县| 大连市| 应城市| 昭觉县| 凯里市|