English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
代码已经上传至Github:https://github.com/YanYoJun/ViewPagerDemo
先看效果
1、布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout 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" android:orientation="vertical" tools:context="com.plbear.yyj.myapplication.MainActivity"> <android.support.design.widget.TabLayout android:id="@"+id/tab" android:layout_width="match_parent" android:layout_height="40dp" app:tabGravity="fill" app:tabIndicatorColor="#4978ef" app:tabIndicatorHeight="2dp" app:tabMode="scrollable" app:tabSelectedTextColor="#4978ef" app:tabTextColor="#222222></android.support.design.widget.TabLayout> <android.support.v4.view.ViewPager android:id="@"+id/view_pager" android:layout_width="match_parent" android:layout_height="wrap_content"></android.support.v4.view.ViewPager> </LinearLayout>
2、代码实现
package com.plbear.yyj.myapplication import android.os.Bundle import android.support.design.widget.Snackbar import android.support.design.widget.TabLayout import android.support.v4.app.Fragment import android.support.v4.app.FragmentPagerAdapter import android.support.v7.app.AppCompatActivity import android.view.Menu import android.view.MenuItem import kotlinx.android.synthetic.layout.activity_main.* class MainActivity : AppCompatActivity() { var mFragList = ArrayList<Fragment>() var adapter = object:FragmentPagerAdapter(supportFragmentManager){ override fun getItem(position: Int): Fragment { return mFragList[position] } override fun getCount(): Int { return 2 } } override fun onCreate(savedInstanceState: Bundle63;) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) initViewPager(); //Fügen Sie zunächst alle Fragmente in den ViewPager hinzu initTabLayout(); //Initialisierung von tablayout } fun initTabLayout(){ tab.setupWithViewPager(view_pager) tab.setTabsFromPagerAdapter(adapter) tab.tabMode = TabLayout.MODE_FIXED tab.getTabAt(0)?.setText("Erste Seite") tab.getTabAt(1)?.setText("Zweite Seite") } fun initViewPager(){ mFragList.add(Fragment1()) mFragList.add(Fragment2()) view_pager.adapter = adapter } }
Hier einige wichtige Punkte zu beachten: Zuerst müssen setupWithViewPager und tablayout miteinander verbunden werden, bevor die Tab-Registerkarten initialisiert werden. Dies ist sehr wichtig,否则tablayout中的文字将无法显示。
Zusammenfassung
Das Folgende ist von mir vorgestellt worden: In Android basierend auf TabLayout+ViewPager zur Implementierung des Effekts der Tab-Karten, hoffentlich hilfreich für alle. Wenn Sie Fragen haben, hinterlassen Sie bitte eine Nachricht, der Redakteur wird rechtzeitig antworten. Ich danke auch sehr für die Unterstützung der Website呐喊教程!
Erklärung: Der Inhalt dieses Artikels wurde aus dem Internet übernommen und gehört dem Urheberrecht des jeweiligen Autors. Der Inhalt wurde von Internetnutzern freiwillig und eigenständig hochgeladen. Diese Website besitzt keine Eigentumsrechte und hat den Inhalt nicht von Hand bearbeitet. Diese Website übernimmt keine Haftung für rechtliche Verpflichtungen. Wenn Sie verdächtige urheberrechtliche Inhalte finden, sind Sie herzlich eingeladen, eine E-Mail an notice#w zu senden.3codebox.com (Bitte ersetzen Sie # durch @ beim Senden einer E-Mail zur Meldung von Verstößen und fügen Sie relevante Beweise bei. Bei nachgewiesener Täuschung wird diese Website den verdächtigen Inhalt sofort löschen.)