不使用 ViewPager 的 TabLayout [英] TabLayout without using ViewPager
本文介绍了不使用 ViewPager 的 TabLayout的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想实现一个 TabLayout
因为它很简单但是我发现的所有教程都涉及一个 ViewPager
.我只想要像 OnClickListener
这样的东西,如果我点击 Add
图标,它会显示一个显示标签 1"的吐司,如果我点击日历图标,它会显示显示标签 2"的吐司
I want to implement a TabLayout
because it is simple but all the tutorials I have found involve a ViewPager
. I just want something like OnClickListener
where if I click the Add
icon, it will show a toast that displays "tab 1" and if I click a calendar icon, it will show a toast that displays "tab 2"
我想使用 TabLayout
因为它处理设备旋转.
I would like to use TabLayout
because it handles device rotations.
Main_activity.java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
// Add five tabs. Three have icons and two have text titles
tabLayout.addTab(tabLayout.newTab().setIcon(R.drawable.add_live));
tabLayout.addTab(tabLayout.newTab().setIcon(R.drawable.calendar_live));
tabLayout.addTab(tabLayout.newTab().setIcon(R.drawable.group_live));
tabLayout.addTab(tabLayout.newTab().setText("Send"));
tabLayout.addTab(tabLayout.newTab().setText("Send & Post"));
}
}
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:app="http://schemas.android.com/tools">
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabMode="fixed"
app:tabGravity="fill" />
</RelativeLayout>
推荐答案
我找到了setOnTabSelectedListener
:
I found setOnTabSelectedListener
:
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
if(tabLayout.getSelectedTabPosition() == 0){
Toast.makeText(MainActivity.this, "Tab " + tabLayout.getSelectedTabPosition(), Toast.LENGTH_LONG).show();
}else if(tabLayout.getSelectedTabPosition() == 1){
Toast.makeText(MainActivity.this, "Tab " + tabLayout.getSelectedTabPosition(), Toast.LENGTH_LONG).show();
}else if(tabLayout.getSelectedTabPosition() == 2){
Toast.makeText(MainActivity.this, "Tab " + tabLayout.getSelectedTabPosition(), Toast.LENGTH_LONG).show();
}else if(tabLayout.getSelectedTabPosition() == 3){
Toast.makeText(MainActivity.this, "Tab " + tabLayout.getSelectedTabPosition(), Toast.LENGTH_LONG).show();
}else if(tabLayout.getSelectedTabPosition() == 4){
Toast.makeText(MainActivity.this, "Tab " + tabLayout.getSelectedTabPosition(), Toast.LENGTH_LONG).show();
}
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
}
这篇关于不使用 ViewPager 的 TabLayout的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文