Android仿新浪微博分页管理界面(3)

本文实例为大家分享了Android仿新浪微博分页管理界面的具体代码,供大家参考,具体内容如下

多个activity分页管理,为了方便获取上下文,采用继承TabActivity的传统方法。

大致思路:使用RadioGroup点击触发不同的选卡项,选卡项绑定不同的activiity,进而进行分页管理。详解见注解。

/**
 * 主Activity
 * 通过点击RadioGroup下的RadioButton来切换不同界面
 * Created by D&LL on 2016/7/20.
 */
public class MainActivity extends TabActivity {
 //定义TabHost对象
 private TabHost tabHost;
 //定义RadioGroup对象
 private RadioGroup radioGroup;
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.tab_layout);
  initView();
  initData();
 }
 /**
  * 初始化组件
  */
 private void initView() {
  //实例化TabHost,得到TabHost对象
  tabHost = getTabHost();

  //得到Activity的个数
  int count = Constant.ConValue.mTabClassArray.length;

  for (int i = 0; i < count; i++) {
   //为每一个Tab按钮设置图标、文字和内容
   TabSpec tabSpec = tabHost.newTabSpec(Constant.ConValue.mTextviewArray[i])
     .setIndicator(Constant.ConValue.mTextviewArray[i]).setContent(getTabItemIntent(i));
   //将Tab按钮添加进Tab选项卡中
   tabHost.addTab(tabSpec);
  }
  //实例化RadioGroup
  radioGroup = (RadioGroup) findViewById(R.id.main_radiogroup);
 }
 /**
  * 初始化组件
  */
 private void initData() {
  // 给radioGroup设置监听事件
  radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
   public void onCheckedChanged(RadioGroup group, int checkedId) {
    switch (checkedId) {
     case R.id.RadioButton0:
      tabHost.setCurrentTabByTag(Constant.ConValue.mTextviewArray[0]);
      break;
     case R.id.RadioButton1:
      tabHost.setCurrentTabByTag(Constant.ConValue.mTextviewArray[1]);
      break;
     case R.id.RadioButton2:
      tabHost.setCurrentTabByTag(Constant.ConValue.mTextviewArray[2]);
      break;
     case R.id.RadioButton3:
      tabHost.setCurrentTabByTag(Constant.ConValue.mTextviewArray[3]);
      break;
     case R.id.RadioButton4:
      tabHost.setCurrentTabByTag(Constant.ConValue.mTextviewArray[4]);
      break;
    }
   }
  });
  ((RadioButton) radioGroup.getChildAt(0)).toggle();
 }
 /**
  * 给Tab选项卡设置内容(每个内容都是一个Activity)
  */
 private Intent getTabItemIntent(int index) {
  Intent intent = new Intent(this, Constant.ConValue.mTabClassArray[index]);
  return intent;
 }
}

MainActivity布局文件tab_layout.xml. TabHost布局,添加一个TabWidget用于显示activity,下面是一个RadioGroup显示切换activity的按钮菜单。



 
  
  
  
   
   
   
   
   
  
 

效果图:

Android仿新浪微博分页管理界面(3)_第1张图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(Android仿新浪微博分页管理界面(3))