首页 > 系统 > Android > 正文

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

2019-12-12 04:34:14
字体:
来源:转载
供稿:网友

本文实例为大家分享了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的按钮菜单。

<?xml version="1.0" encoding="utf-8"?><TabHost xmlns:android="http://schemas.android.com/apk/res/android"   android:id="@android:id/tabhost"   android:layout_width="fill_parent"   android:layout_height="fill_parent"> <LinearLayout  android:layout_width="fill_parent"  android:layout_height="fill_parent"  android:orientation="vertical">  <FrameLayout   android:id="@android:id/tabcontent"   android:layout_width="fill_parent"   android:layout_height="0.0dip"   android:layout_weight="1.0"/>  <TabWidget   android:id="@android:id/tabs"   android:layout_width="fill_parent"   android:layout_height="wrap_content"   android:layout_weight="0.0"   android:visibility="gone"/>  <RadioGroup   android:id="@+id/main_radiogroup"   android:layout_width="fill_parent"   android:layout_height="wrap_content"   android:layout_gravity="bottom"   android:background="@drawable/tab_widget_background"   android:gravity="center_vertical"   android:orientation="horizontal"   android:padding="2dip">   <RadioButton    android:id="@+id/RadioButton0"    style="@style/tab_item_background"    android:drawableTop="@drawable/tab_home"    android:text="主页"    android:textColor="#ffffff"/>   <RadioButton    android:id="@+id/RadioButton1"    style="@style/tab_item_background"    android:drawableTop="@drawable/tab_msg"    android:text="评论"    android:textColor="#ffffff"/>   <RadioButton    android:id="@+id/RadioButton2"    style="@style/tab_item_background"    android:drawableTop="@drawable/tab_write"    android:text="发微博"    android:textColor="#ffffff"/>   <RadioButton    android:id="@+id/RadioButton3"    style="@style/tab_item_background"    android:drawableTop="@drawable/tab_me"    android:text="用户信息"    android:textColor="#ffffff"/>   <RadioButton    android:id="@+id/RadioButton4"    style="@style/tab_item_background"    android:drawableTop="@drawable/tab_more"    android:text="更多"    android:textColor="#ffffff"/>  </RadioGroup> </LinearLayout></TabHost>

效果图:

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表