Inflater&TabLayout&ViewPager
来源:互联网 发布:floyd算法负权 编辑:程序博客网 时间:2024/05/29 17:52
package com.pcs.learn.Main;import android.content.Context;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.design.widget.TabLayout;import android.support.v4.app.FragmentManager;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ArrayAdapter;import android.widget.ListView;import com.pcs.learn.Base.BaseFragment;import com.pcs.learn.R;import com.pcs.learn.View.PullableView.PullToRefreshLayout;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import butterknife.Bind;import butterknife.ButterKnife;/** * Created by chaosi on 2015/9/12. */public class GroupFragment extends BaseFragment { @Bind(R.id.viewPager) ViewPager viewPager; @Bind(R.id.tabLayout) TabLayout tabLayout; public View mView; public Context mContext; public FragmentManager mFragmentManager; public List<View> mViewList = new ArrayList<>(); public List<String> mTitleList = new ArrayList<>(); public ListView talkListView; public ListView groupListView; @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { super.init(); mContext= getActivity(); mFragmentManager= getActivity().getSupportFragmentManager(); mView= inflater.inflate(R.layout.fragment_group, container, false); ButterKnife.bind(this, mView); mTitleList.add("会话"); mTitleList.add("小组"); tabLayout.setTabMode(TabLayout.MODE_FIXED); tabLayout.addTab(tabLayout.newTab().setText(mTitleList.get(0))); tabLayout.addTab(tabLayout.newTab().setText(mTitleList.get(1))); LayoutInflater mInflater = LayoutInflater.from(mContext); View talkView = mInflater.inflate(R.layout.fragment_list, null); View groupView = mInflater.inflate(R.layout.fragment_list, null); mViewList.add(talkView); mViewList.add(groupView); MyPagerAdapter mAdapter = new MyPagerAdapter(mViewList, mTitleList); viewPager.setAdapter(mAdapter); //给ViewPager设置适配器 tabLayout.setupWithViewPager(viewPager); //将TabLayout和ViewPager关联起来。 tabLayout.setTabsFromPagerAdapter(mAdapter); //给Tabs设置适配器 talkListView= (ListView)((PullToRefreshLayout)talkView).getChildAt(1); groupListView= (ListView)((PullToRefreshLayout)groupView).getChildAt(1); talkListView.setAdapter(new ArrayAdapter<>(mContext, android.R.layout.simple_list_item_1, Arrays.asList("111","222","333","444","555"))); groupListView.setAdapter(new ArrayAdapter<>(mContext, android.R.layout.simple_list_item_1, Arrays.asList("111","222","333","444","555"))); return mView; } private class MyPagerAdapter extends PagerAdapter { private List<View> mViewList; private List<String> mTitleList; public MyPagerAdapter(List<View> mViewList, List<String> mTitleList) { this.mViewList = mViewList; this.mTitleList = mTitleList; } @Override public int getCount() { return mViewList.size(); //页卡数 } @Override public boolean isViewFromObject(View view, Object object) { return view == object; //官方推荐写法 } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(mViewList.get(position)); //添加页卡 return mViewList.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(mViewList.get(position)); //删除页卡 } @Override public CharSequence getPageTitle(int position) { return mTitleList.get(position); //页卡标题 } }}
0 0
- Inflater&TabLayout&ViewPager
- ViewPager+TabLayout
- Viewpager+Tablayout
- TabLayout+ViewPager
- TabLayout+ViewPager
- TabLayout+viewPager
- ViewPager+TabLayout
- Tablayout+viewpager
- TabLayout +ViewPager
- tablayout+viewpager
- Tablayout + viewpager
- Tablayout+viewpager
- TabLayout+ViewPager
- Tablayout+Viewpager
- Tablayout+Viewpager
- Tablayout+viewpager
- tablayout +viewpager
- ViewPager + Fragment + TabLayout
- Makefile的简单语法
- The requested URL Not Found问题
- 我的2年苦逼狗血相亲经历(6)
- MySQLのMySQL备份
- C++动态库导出类
- Inflater&TabLayout&ViewPager
- IO技术使用时需要的明确
- Android Studio 定制快速生成Jni 头文件工具 Ndk教程
- LeetCode-Contains Duplicate
- LightOJ 1210 - Efficient Traffic System【强连通图】
- Python string format
- Leetcode: Basic Calculator
- java break语句详解 break label;语句的使用
- TCP释放连接时为什么time_wait状态必须等待2MSL时间(阅读笔记)?