7
私はDrawerLayout
とViewPagerIndicator
を使用していますが、最後はDrawerLayout
で正しく機能しません。一度アプリケーションを開くと、ビューページが正しく表示されますが、DrawerLayoutのフラグメントを変更すると、ViewPagerのフラグメントは消えます。第1、第3及び第五は消えますが、ViewPagerのフラグメントが消える
FragmentManager fragmentManager = getSupportFragmentManager();
switch (arg2) {
case 0:
contentFragment = new Lebanon();
break;
}
fragmentManager.beginTransaction()
.replace(R.id.content_frame, contentFragment).commit();
ViewPagerにおける第2のフラグメントおよび第四があり、彼らは消えませんでした:
は、ここに私のFragmentManagerです。私のコードで何が間違っていますか?
ここに私の断片です:GoogleMusicAdapter
と
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
viewta = inflater.inflate(R.layout.simple_tabs, container, false);
SamsungLB = com.androidarabia.lebanon.SamsungLB.newInstance();
HTCLB = com.androidarabia.lebanon.HTCLB.newInstance();
LGLB = com.androidarabia.lebanon.LGLB.newInstance();
SonyLB = com.androidarabia.lebanon.SonyLB.newInstance();
SearchLB = com.androidarabia.lebanon.SearchLB.newInstance();
this.getSherlockActivity().getSupportActionBar()
.setHomeButtonEnabled(true);
prefs = this.getSherlockActivity().getSharedPreferences(prefName,
Context.MODE_PRIVATE);
adapter = new GoogleMusicAdapter(this.getSherlockActivity()
.getSupportFragmentManager());
pager = (ViewPager) viewta.findViewById(R.id.pager);
pager.setPageTransformer(true, new ZoomOutPageTransformer());
indicator = (TabPageIndicator) viewta.findViewById(R.id.indicator);
pager.setCurrentItem(0);
pager.setAdapter(adapter);
pager.setOffscreenPageLimit(4);
indicator.setViewPager(pager);
return viewta;
}
private void addtabs(ViewPager pager2) {
// TODO Auto-generated method stub
pager2.setAdapter(adapter);
pager2.setOffscreenPageLimit(4);
indicator.setViewPager(pager);
}
class GoogleMusicAdapter extends FragmentStatePagerAdapter {
public GoogleMusicAdapter(FragmentManager fm) {
super(fm);
notifyDataSetChanged();
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
return SamsungLB;
case 1:
return HTCLB;
case 2:
return LGLB;
case 3:
return SonyLB;
case 4:
return SearchLB;
}
notifyDataSetChanged();
return TestFragment.newInstance(CONTENT[position % CONTENT.length]);
}
@Override
public CharSequence getPageTitle(int position) {
return CONTENT[position % CONTENT.length].toUpperCase();
}
@Override
public int getCount() {
return CONTENT.length;
}
}
このような方法はありません... –
@KingOmarプロジェクトにサポートライブラリの最新バージョンがあることを確認してください。 – Luksprog
ええ、私はそれをgoogledとちょうどチェックした。私はサポートライブラリの最新バージョンを持っています。 –