[JAVA] Balayez pour changer d'écran

Cette fois, je voudrais expliquer ** ViewPager **.

introduction

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

ÉTAPE 1 Modification de l'activité principale

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.

ÉTAPE2 Création de l'adaptateur

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";

        }
    }

}

ÉTAPE3 Modification de l'activité principale

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.

STEP4 Invitation du fragment

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

Balayez pour changer d'écran
Passer de slim3-gen à slim3-gen-jsr269
Passer de JSP + JSTL à Thymeleaf
Pour changer JVM pour chaque projet
Passer d'Eclipse à VS Code
à_ ○
Comment changer d'images miniatures avec JavaScript
Comment changer de version de Java sur Mac
Comment basculer entre plusieurs versions de Java