(Android 基础知识) ActionBar.Tab导航Tab(标签)
小虾米
阅读:568
2021-04-01 10:12:37
评论:0
ActionBar.Tab简介:
标题栏中的选项卡,负责Fragment(片段)的隐藏和显示
核心代码:
package com.rf.actionbardemo;
import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.os.Bundle;
public class FirstActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.first);
// ActionBar实例化
final ActionBar actionBar = getActionBar();
// 添加Tab导航
// ActionBar 启动导航栏
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
actionBar.setDisplayShowTitleEnabled(false);
// 添加相关的Tab页面
ActionBar.Tab tabA = actionBar.newTab().setText("A Tab");
ActionBar.Tab tabB = actionBar.newTab().setText("B Tab");
ActionBar.Tab tabC = actionBar.newTab().setText("C Tab");
// 添加事务片段
Fragment fragmentA = new MyFragment();
Fragment fragmentB = new MyFragment();
Fragment fragmentC = new MyFragment();
// 导航标签添加监听器
tabA.setTabListener(new MyTabListener(fragmentA));
tabB.setTabListener(new MyTabListener(fragmentB));
tabC.setTabListener(new MyTabListener(fragmentC));
// 标题栏添加导航标签
actionBar.addTab(tabA);
actionBar.addTab(tabB);
actionBar.addTab(tabC);
}
public class MyTabListener implements ActionBar.TabListener {
// 添加事务片段
private Fragment fragment;
// 相关的构造函数
public MyTabListener(Fragment fragment) {
super();
this.fragment = fragment;
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
// 事务片段的添加
ft.add(R.id.start, fragment, null);
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
}
}
事务片段代码:
package com.rf.actionbardemo;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
//自定义的事务片段
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
// 布局样式文件
return inflater.inflate(R.layout.firsts, container, false);
}
}
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。