다른 기능을 수행하는 16 개의 조각이 있습니다. Fragment1, Fragment16, Fragment2, Fragment16, Fragment3, Fragment16 등과 같은 일련의 조각을로드하고 싶습니다. 매번 Fragment16을 반복합니다. Fragment16은 30 개의 체크 박스를 가지고 있으며, 다음 체크 박스에 들어가기 전에 매번 체크되고 싶습니다. 내 코드 스 니펫은 아래에 있습니다.매초마다 조건부로 스 와이프
public class MainActivity extends AppCompatActivity {
private MyPagerAdapter mSectionsPagerAdapter;
private ViewPager mViewPager;
TinyDB tinydb;
ArrayList<Model> mList;
ArrayList<Model> CheckList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tinydb = new TinyDB(this);
mList = retrieveModel();
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mSectionsPagerAdapter = new MyPagerAdapter(getSupportFragmentManager(), this);
mViewPager = (ViewPager) findViewById(R.id.container);
mViewPager.setAdapter(mSectionsPagerAdapter);
}
}
어댑터는 다음과 같습니다
public class MyPagerAdapter extends FragmentPagerAdapter {
private Context context;
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Fragment fragment = null;
switch (position) {
case 0:
fragment = new Fragment1();
break;
case 1:
fragment = new Fragment1A();
break;
case 2:
fragment = new Fragment2();
break;
case 3:
fragment = new Fragment1A();
break;
case 4:
fragment = new Fragment3();
break;
case 5:
fragment = new Fragment1A();
break;
case 6:
fragment = new Fragment4();
break;
case 7:
fragment = new Fragment1A();
break;
case 8:
fragment = new Fragment5();
break;
case 9:
fragment = new Fragment1A();
break;
case 10:
fragment = new Fragment6();
break;
case 11:
fragment = new Fragment1A();
break;
case 12:
fragment = new Fragment7();
break;
case 13:
fragment = new Fragment1A();
break;
case 14:
fragment = new Fragment8();
break;
case 15:
fragment = new Fragment1A();
break;
case 16:
fragment = new Fragment9();
break;
case 17:
fragment = new Fragment1A();
break;
case 18:
fragment = new Fragment10();
break;
case 19:
fragment = new Fragment1A();
break;
case 20:
fragment = new Fragment11();
break;
case 21:
fragment = new Fragment1A();
break;
case 22:
fragment = new Fragment12();
break;
case 23:
fragment = new Fragment1A();
break;
case 24:
fragment = new Fragment13();
break;
case 25:
fragment = new Fragment1A();
break;
case 26:
fragment = new Fragment14();
break;
case 27:
fragment = new Fragment1A();
break;
case 28:
fragment = new Fragment15();
break;
case 29:
fragment = new Fragment1A();
break;
}
return fragment;
}
Fragment1는
public class Fragment1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.layout_images, container, false);
ImageView img = view.findViewById(R.id.section_label);
img.setImageResource(R.mipmap.one);
return view;
}
}
그래서 질문은 무엇입니까? 너의 문제는 무엇인가? – just
거기에 fragment16 대신 대화 상자를 사용하는 이유는 무엇입니까? –
모든 checkboexes가 선택되어 있지 않으면 조건부로 검사 할 수 있습니다. 다음 조각으로 이동하지 마십시오. 이 조건은 16 번째 조각이로드 될 때마다 검사됩니다. – Beginner