Android ViewPager Vorher / Nächste Schaltfläche

Okay, also entwickle ich eine Android App, die einen ViewPager benutzt, um Seiten anzuzeigen.

Innerhalb jeder Seite habe ich eine Reihe von Schaltflächen zum Navigieren zwischen Seiten (zusätzlich zum Swiping zwischen Seiten). Diese Tasten sind für "erste Seite", "vorherige Seite", "nächste Seite" und "letzte Seite".

  • Android-Layout-Vorschauer wirft Fehler beim Hinzufügen von benutzerdefiniertem LinearLayout
  • Android Schatten anzeigen
  • Android assetManager
  • Wie implementiere ich Google Maps nach Adressen in Android?
  • Vermeiden Sie es, die gleiche Ansicht neu zu erstellen, wenn Sie die Tabulatorführung durchführen
  • Wie kann ich onBackPressed () in Fragments implementieren?
  • Was ich nicht herausfinden kann, wie zu tun ist Ingenieur ein Mechanismus, um eine Seite ändern auf eine Schaltfläche klicken.

    Wer hat irgendwelche Ideen?

    ETA: Um das Setup besser zu erläutern, werden die Schaltflächen innerhalb des Layouts jeder Seite deklariert und mit dem Rest des Layouts im PagerAdapter aufgeblasen. Mein Problem ist, dass ich den ViewPager nicht aus dem PagerAdapter beziehen kann. Oder zumindest kann ich nicht an einen Weg denken, es zu tun.

  • Android Layout mit ListView zwischen "Top Bar" und "Bottom Bar"
  • Wie Handle Gerät zurück Taste auf Sencha Touch-Anwendung
  • AndroidRuntime: Der Import com.google.api.client kann nicht behoben werden
  • NullPointerException, die nicht auf eine beliebige Zeile in meinem Code verweist
  • Führen Sie ein Stück Code nur einmal, wenn eine Anwendung installiert ist
  • Wie deaktivieren Sie Elemente in AlertDialog (setMultiChoiceItems)?
  • 6 Solutions collect form web for “Android ViewPager Vorher / Nächste Schaltfläche”

    Taste:

     Button yourButton = (Button)findViewById(R.id.button1); yourButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { mViewPager.setCurrentItem(getItem(+1), true); //getItem(-1) for previous } }); 

    Funktion:

     private int getItem(int i) { return mViewPager.getCurrentItem() + i; } 

    Hoffe das hilft 🙂

     yourButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { yourViewPager.setCurrentItem(page, smoothScroll); } }); 

    Ich habe dieses Projekt mit diesem Code beendet.

     vPager = (ViewPager) findViewById(R.id.viewpager); View tempView1 = inflater.inflate(R.layout.ani_dialog1, null); firstView = (ImageView) tempView1.findViewById(R.id.ani_dialog_next); views.add(tempView1); firstView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub vPager.setCurrentItem(1, true); } }); 

    Code aktualisieren

     Button preButton = (Button)findViewById(R.id.pre_button); Button nextButton = (Button)findViewById(R.id.next_button); preButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mViewPager.setCurrentItem(mViewPager.getCurrentItem()-1, true); } }); nextButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mViewPager.setCurrentItem(mViewPager.getCurrentItem()+1, true); } }); 
      1)make layout <RelativeLayout android:layout_width="match_parent" android:layout_height="200dp" android:background="@color/white" android:weightSum="1"> <android.support.v4.view.ViewPager android:id="@+id/images_pager" android:layout_width="match_parent" android:layout_height="match_parent" > </android.support.v4.view.ViewPager> <ImageView android:id="@+id/img_next" android:layout_width="35dp" android:layout_height="35dp" android:src="@drawable/forward_white" android:background="@color/colorPrimary" android:layout_centerVertical="true" android:layout_alignParentRight="true" android:layout_marginRight="5dp" android:paddingTop="5dp" android:paddingBottom="5dp" /> <ImageView android:id="@+id/img_previous" android:layout_width="35dp" android:layout_height="35dp" android:src="@drawable/back_white" android:background="@color/colorPrimary" android:layout_centerVertical="true" android:layout_marginLeft="5dp" android:layout_alignParentLeft="true" android:paddingTop="5dp" android:paddingBottom="5dp"/> </RelativeLayout> 2) Set custom Adpter CustomViewPagerAdapter custompageradpter; ViewPager mViewPager; mViewPager = (ViewPager)shareImagesDialouge.findViewById(R.id.images_pager); custompageradpter = new CustomViewPagerAdapter(this); mViewPager.setAdapter(custompageradpter); public class CustomViewPagerAdapter extends PagerAdapter { Context mContext; LayoutInflater mLayoutInflater; int[] mResources = { R.drawable.emoji_1, R.drawable.emoji_2, R.drawable.emoji_3, R.drawable.emoji_4, R.drawable.emoji_5, R.drawable.emoji_6 }; public CustomViewPagerAdapter(Context context) { mContext = context; mLayoutInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @Override public int getCount() { return mResources.length; } @Override public boolean isViewFromObject(View view, Object object) { return view == ((LinearLayout) object); } @Override public Object instantiateItem(ViewGroup container, int position) { View itemView = mLayoutInflater.inflate(R.layout.pager_item, container, false); ImageView imageView = (ImageView) itemView.findViewById(R.id.imageView); imageView.setImageResource(mResources[position]); container.addView(itemView); return itemView; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((LinearLayout) object); } } 3) for next and previous button case R.id.img_previous: mViewPager.setCurrentItem(getItemofviewpager(-1), true); break; case R.id.img_next: mViewPager.setCurrentItem(getItemofviewpager(+1), true); break; 4) make this function private int getItemofviewpager(int i) { return mViewPager.getCurrentItem() + i; } 
     public void onClick(View v) { int currentItem = mViewPager.getCurrentItem(); mViewPager.setCurrentItem(currentItem+1); //(currentItem-1) } 

    Nur dieser Code in der Schaltfläche klicken: @Override

    getcurrentitem ist das aktuelle Element im viewpager , das nächste Element ist currentItem + 1

    Das Android ist ein Google Android Fan-Website, Alles über Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.