Android Tab(TabLayout+Fragment)
2016-01-21 11:06
393 查看
layout文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical"> <android.support.design.widget.TabLayout android:id="@+id/tabLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorPrimary" app:tabIndicatorColor="@color/white" app:tabSelectedTextColor="@color/gray" app:tabTextColor="@color/white" /> <android.support.v4.view.ViewPager android:id="@+id/container" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" /> </LinearLayout>
Activity源码:
package com.gamoos.hellotabwidget; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Fragment tabFrames[] = new Fragment[]{new AFragment(), new BFragment(), new CFragment()}; String tabTitles[] = new String[]{"主页", "新闻", "论坛"}; TabLayout tabLayout = (TabLayout) findViewById(R.id.tabLayout); TabFragmetPagerAdapter fAdapter = new TabFragmetPagerAdapter(getSupportFragmentManager(), tabTitles, tabFrames); for (int i = 0; i < tabTitles.length; i++) { tabLayout.addTab(tabLayout.newTab().setText(tabTitles[i])); } ViewPager viewPaper = (ViewPager) findViewById(R.id.container); //viewpager加载adapter viewPaper.setAdapter(fAdapter); //TabLayout加载viewpager tabLayout.setupWithViewPager(viewPaper); } public class TabFragmetPagerAdapter extends FragmentPagerAdapter { public Fragment tabFrames[];// = new Fragment[]{new AFragment(), new BFragment(), new CFragment()}; public String titles[];// = new String[]{"主页", "新闻", "论坛"}; public TabFragmetPagerAdapter(FragmentManager fm, String[] titles, Fragment[] tabFrames) { super(fm); this.titles = titles; this.tabFrames = tabFrames; } @Override public Fragment getItem(int position) { return tabFrames[position]; } @Override public int getCount() { return titles.length; } @Override public CharSequence getPageTitle(int position) { return titles[position]; } } }
源码下载地址:
http://download.csdn.net/detail/lanhy999/9412634
相关文章推荐
- android程序获取手机imei方法
- 【Android】直接利用View创建Dialog
- android界开发如何禁止密码输入框复制粘贴
- Android 四大组件详解(二) Service
- Android textView字间距自定义LetterSpacingTextView
- Android之SharedPreferences详解
- Android官方课程总结笔记【多媒体之音频管理】
- 关于android6.0不能使用BLE
- Android抖动的输入框
- 在Android源码目录用javadoc生成API html文档
- Android自定义View——自定义样式
- Android 应用启动速度优化
- Android沉浸式状态栏SystemBarTint的使用方法
- Android Studio 关于so文件导入的若干方案
- Android 自定义对话框(控制大小、位置)
- Android Studio 新建项目的R文件丢失的解决方法
- Android开发套路收集整理与讨论
- android技巧:apk文件反编译以及签名打包
- Android高级Picasso
- 通过adb命令获取Android手机的IP地址