tab + fragment

//依赖     

              compile 'com.android.support:design:26.+'

public class MainActivity extends AppCompatActivity {  
  private TabLayout mTab;    private ViewPager mMyvp; 
   private String[] tabString = {"最新日报","专栏","热门","主题日报"};
 private List<Fragment> fragments; 
   @Override    protected void onCreate(Bundle savedInstanceState) {   
     super.onCreate(savedInstanceState);      
  setContentView(R.layout.activity_main);   
     //获取控件      
  initView();     
   //初始化tab     
   initTab();    
    //fragment数据源
 initFragment();    
    mTab.addTab(mTab.newTab().setText(tabString[0]));    
    MyFragmentPagerAdapter myFragmentPagerAdapter   = new MyFragmentPagerAdapter(getSupportFragmentManager()); 
       mMyvp.setAdapter(myFragmentPagerAdapter);     
   mTab.setupWithViewPager(mMyvp);      
  mTab.setTabsFromPagerAdapter(myFragmentPagerAdapter); 
   }   

 class  MyFragmentPagerAdapter extends FragmentPagerAdapter {  
      @Override      
  public CharSequence getPageTitle(int position) {
 return tabString[position];       
 }       

 public MyFragmentPagerAdapter(FragmentManager fm) { 

           super(fm);       

 }      
  @Override    
  public Fragment getItem(int position) {    
        return fragments.get(position);    
    } 
   
    @Override    
    public int getCount() {    
        return fragments.size();   
     }    }   

 private void initFragment() {    
    fragments = new ArrayList<>();     
   fragments.add(new Frag_One());      
  fragments.add(new Frag_Two());       
 fragments.add(new Frag_Three());      
  fragments.add(new Frag_Four());     }

 private void initTab() {      
 // mTab.setTabMode(TabLayout.MODE_SCROLLABLE);  
      mTab.setTabTextColors(Color.BLACK,Color.RED);   
     mTab.setSelectedTabIndicatorColor(Color.BLUE);    
    for (String tabs:tabString){    
        mTab.addTab(mTab.newTab().setText(tabs));  
      } 
   }  

  private void initView() {     
   mTab = (TabLayout) findViewById(R.id.tab);   
     mMyvp = (ViewPager) findViewById(R.id.myvp);  
  }}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值