Cette fois, je voudrais expliquer ** ViewPager **.
Cette fois, j'aimerais utiliser ** ViewPager **, qui vous permet de basculer ** View ** en faisant glisser. C'est l'écran qui change lorsque vous faites glisser votre doigt sur le côté. Je publierai l'URL de ce à quoi il ressemble réellement, donc si vous ne le savez pas, veuillez le vérifier. https://media.giphy.com/media/pVZA3Zuhmf8uM8Vkd5/giphy.gif La source est également disponible sur GitHub. https://github.com/minton0721/ViewPagerSample
Tout d'abord, ajoutez ViewPager à MainActivity.
MainActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<android.support.v4.view.ViewPager
android:id="@+id/homePage"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v4.view.PagerTabStrip
android:id="@+id/pager_tab_strip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:background="#fff"
android:textColor="#FF5F5F"
android:paddingTop="10dp"
android:paddingBottom="10dp"/>
</android.support.v4.view.ViewPager>
</android.support.constraint.ConstraintLayout>
** PagerTabStrip ** affichera le titre de l'onglet. Vous pouvez le supprimer si vous n'en avez pas besoin, mais sans lui, vous ne saurez pas de quelle page il s'agit, nous allons donc l'implémenter ici. Assurez-vous de le mettre dans le ViewPager si vous en avez besoin.
MyFragmentStatePagerAdapter.java
public class MyFragmentStatePagerAdapter extends FragmentPagerAdapter {
public MyFragmentStatePagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int i) {
switch(i){
case 0:
return new Fragment0();
case 1:
return new Fragment1();
default:
return new Fragment2();
}
}
@Override
public int getCount() {
return 3;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position){
case 0:
return "Écran 1";
case 1:
return "Écran 2";
default:
return "Écran 3";
}
}
}
MainActivity.java
public class MainActivity extends AppCompatActivity {
ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = findViewById(R.id.homePage);
viewPager.setAdapter(new MyFragmentStatePagerAdapter(getSupportFragmentManager()));
}
}
Connectez-vous à MyFragmentStatePagerAdapter avec setAdapter.
Chaque fragment.java
class Fragment0 extends Fragment {
View rootView;
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment0, container, false);
return rootView;
}
}
J'appellerai l'écran avec CreateView. Vous n'êtes peut-être pas doué pour l'expliquer, mais c'est tout. Je veux pouvoir mieux expliquer ...
Recommended Posts