点击radiobutton之后 fragment不加载 有人知道为什么吗
1条回答 默认 最新
ziyejinwei1994 2017-05-05 06:11关注public class MainActivity extends FragmentActivity { private MyLazyViewpager pager; private RadioButton home_page; private RadioButton find; private RadioButton my; private RadioGroup group; List<Fragment> fragments = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); } private void initView() { pager = (MyLazyViewpager) findViewById(R.id.pager); home_page = (RadioButton) findViewById(R.id.home_page); find = (RadioButton) findViewById(R.id.find); my = (RadioButton) findViewById(R.id.my); group = (RadioGroup) findViewById(R.id.group); fragments.add(new HomeFragment()); fragments.add(new FindFragment()); fragments.add(new MyFragment()); } private void initData() { FragmentPagerAdapter adapter = new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public Fragment getItem(int position) { return fragments.get(position); } @Override public int getCount() { return fragments.size(); } }; pager.setAdapter(adapter); group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { switch (i) { case R.id.home_page: pager.setCurrentItem(0, false); break; case R.id.find: pager.setCurrentItem(1, false); break; case R.id.my: pager.setCurrentItem(2, false); break; } } }); pager.setCurrentItem(0); pager.setOnPageChangeListener(new MyLazyViewpager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { switch (position) { case 0: group.check(R.id.home_page); break; case 1: group.check(R.id.find); break; case 2: group.check(R.id.my); break; } } @Override public void onPageScrollStateChanged(int state) { } }); }解决 无用评论 打赏 举报