TabLayout
を実装したいのは簡単だからですが、見つけたすべてのチュートリアルにはViewPager
が関係しています。 OnClickListener
のようなものが欲しいのですが、Add
アイコンをクリックすると、「タブ1」を表示するトーストが表示され、カレンダーアイコンをクリックすると、表示されるトーストが表示されます「タブ2」
デバイスの回転を処理するので、TabLayout
を使用したいと思います。
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
:
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) {
}
});
}