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
原创粉丝点击