=.=

//MainActivity

public class MainActivity extends TabActivity implements
OnCheckedChangeListener { private static long firstTime; private TabHost tabHost;
private RadioGroup radioderGroup; @Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK
&& event.getAction() == KeyEvent.ACTION_DOWN) { if (firstTime + 2000 > System.currentTimeMillis()) {
super.onBackPressed();
} else {
ToastUtils.showShort(this, "再按一次退出程序");
}
firstTime = System.currentTimeMillis(); return false;
}
return super.dispatchKeyEvent(event);
} @Override
protected void onCreate(Bundle arg0) {
// TODO Auto-generated method stub
super.onCreate(arg0); setContentView(R.layout.activity_new_main); tabHost = this.getTabHost();
tabHost.addTab(tabHost.newTabSpec("首页").setIndicator("首页")
.setContent(new Intent(this, MainWebActivity.class)));
tabHost.addTab(tabHost.newTabSpec("消息").setIndicator("消息")
.setContent(new Intent(this, MessageActivity.class)));
tabHost.addTab(tabHost.newTabSpec("发现").setIndicator("发现")
.setContent(new Intent(this, FindWebActivity.class)));
// tabHost.addTab(tabHost.newTabSpec("个人").setIndicator("个人").setContent(new
// Intent(this, UserCenterWebActivity.class))); tabHost.addTab(tabHost.newTabSpec("个人").setIndicator("个人")
.setContent(new Intent(this, MyProfileActivity.class))); radioderGroup = (RadioGroup) findViewById(R.id.main_radio);
radioderGroup.setOnCheckedChangeListener(this);
radioderGroup.check(R.id.mainTabs_radio_home);// 默认第一个按钮 EventBus.getDefault().register(this);
} public void onEventMainThread(MainEvent event) { switch (event.what) {
case 3: PrefUtils.putString(this, "find_web_index", "2");
radioderGroup.check(R.id.mainTabs_radio_find); break;
case 4: PrefUtils.putString(this, "find_web_index", "3"); radioderGroup.check(R.id.mainTabs_radio_find);
break; default:
break;
} } @Override
protected void onDestroy() {
// TODO Auto-generated method stub
EventBus.getDefault().unregister(this);
super.onDestroy();
} /**
* 连续按两次返回键就退出
*/
@Override
public void onBackPressed() { } @Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.mainTabs_radio_home:
tabHost.setCurrentTabByTag("首页");
break;
case R.id.mainTabs_radio_message:
tabHost.setCurrentTabByTag("消息");
break;
case R.id.mainTabs_radio_find:
tabHost.setCurrentTabByTag("发现");
break;
case R.id.mainTabs_radio_personage:
tabHost.setCurrentTabByTag("个人");
break; }
} }

 

//xml

<?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="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
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" /> <include layout="@layout/include_divider" /> <RadioGroup
android:id="@+id/main_radio"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingBottom="3dp"
android:paddingTop="3dp" > <RadioButton
android:id="@+id/mainTabs_radio_home"
style="@style/mainTabs_radio"
android:drawableTop="@drawable/bg_below_home_selector"
android:text="首页" /> <RadioButton
android:id="@+id/mainTabs_radio_message"
style="@style/mainTabs_radio"
android:drawableTop="@drawable/bg_below_message_selector"
android:text="消息" /> <RadioButton
android:id="@+id/mainTabs_radio_find"
style="@style/mainTabs_radio"
android:drawableTop="@drawable/bg_below_find_selector"
android:text="发现" /> <RadioButton
android:id="@+id/mainTabs_radio_personage"
style="@style/mainTabs_radio"
android:drawableTop="@drawable/bg_below_personage_selector"
android:text="个人" />
</RadioGroup>
</LinearLayout> </TabHost>

  

RadioGroup+TabHost的更多相关文章

  1. Android新浪微博客户端(五)——主界面的TabHost和WeiboUtil

    原文出自:方杰|http://fangjie.info/?p=183转载请注明出处 最终效果演示:http://fangjie.info/?page_id=54 该项目代码已经放到github:htt ...

  2. Android应用主界面底部菜单实现

    介绍 现在绝大多数主流的应用主界面,都会包含一个底部菜单,就拿腾讯的QQ与微信来说,看起来是这样的  <---我是底部菜单 原理 在很久以前,可以通过TabActivity实现相关功能,自从Fr ...

  3. 一步一步实现视频播放器client(二)

    实现主体界面:                 222.png (64.46 KB, 下载次数: 0) 下载附件  保存到相冊 前天 21:02 上传 比較常见的一种布局.以下几个button.点击后 ...

  4. 底部菜单栏(二) TabHost & RadioGroup 实现

    需求:使用TabHost & RadioGroup实现底部菜单栏: 效果图: 实现分析: 1.目录结构: 代码实现: 1. activity_main.xml <?xml version ...

  5. TabHost+RadioGroup搭建基础布局

    xml的形势如下: <tabhost> <linearlayout vertival> <framlayout weight=1/> <tabwidget g ...

  6. android中TabHost和RadioGroup

    android底部菜单应用 博客分类: android--UI示例 TabHostMenuRadioGroupButton  在android中实现菜单功能有多种方法. Options Menu:用户 ...

  7. 安卓TabHost+ViewPager+RadioGroup多功能模板整理

    如今安卓比較流行的布局就是类似新闻client和手机QQ那种的底端可选择,上面的个别页面能够滑动选择. 在測试过程中发现用安卓自带的TabHost去构建.非常难得到自己定义的效果. 因此採用TabHo ...

  8. android的tabhost+RadioGroup+PopupWindow

    根据网上的代码稍作修改了下,放着记录学习. 效果图如下: 主代码如下: package com.andyidea.tabdemo; import android.app.TabActivity; im ...

  9. 安卓初級教程(5):TabHost的思考

    package com.myhost; import android.os.Bundle; import android.view.LayoutInflater; import android.wid ...

随机推荐

  1. NodeJS 学习笔记一

    他创造NodeJS的目的是为了实现高性能Web服务器,他首先看重的是事件机制和异步IO模型的优越性,而不是JS.但是他需要选择一种编程语言实现他的想法,这种编程语言不能自带IO功能,并且需要能良好支持 ...

  2. Linux - CentOS6.5服务器搭建与初始化配置详解(下)

    传送带:Linux - CentOS6.5服务器搭建与初始化配置详解(上) 继续接着上面的安装,安装完后会出现下面界面 点击reboot重启 重启后可以看到下面的tty终端界面  因为这就是最小化安装 ...

  3. ios 给view添加一个渐变的背景色

    CAGradientLayer *gradientLayer = [[CAGradientLayer alloc] init]; gradientLayer.colors = @[(__bridge ...

  4. mvn 下载源码和javadoc

    1. 下载源码,两种: . mvn dependency:sources . mvn eclipse:eclipse -DdownloadSources=true 2. 下载javadoc,两种: . ...

  5. MC 自己平均

    using System; using System.Drawing; using System.Linq; using System.Collections; namespace PowerLang ...

  6. 其他信息: Error creating context 'spring.root': 未能加载文件或程序集“EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”或它的某一个依赖项

    详细错误情况: “System.Configuration.ConfigurationErrorsException”类型的异常在 Spring.Core.dll 中发生,但未在用户代码中进行处理 其 ...

  7. 多个dropdownlist只有第一个能选中,其他选不中之我见

    前段时间遇到这个问题,发现在页面中的源代码已经显示selected=“selected" 可是还是选中的第一项,试过很多办法,都不行,最后只好靠js来解决了,获取所有的dropdownlis ...

  8. vs找不到svn源代码管理插件之我见

    使用svn要安装两个文件,一个客户端:TortoiseSVN-1.8.msi,一个插件:AnkhSvn-2.5.msi:两个都安装好之后,在vs的tool(工具)选项卡中,选择自定义,然后选择sour ...

  9. iOS中的代理和Block

    一.代理(Delegate) 1)含义 iOS中的代理,比如父母要去上班,到中午12点了,需要给宝宝喂饭吃,但是父母正在上班,这时需要有一个人来帮忙完成一些事情(需要有个保姆来帮忙给宝宝喂饭),此时, ...

  10. RS232 DB9 公头 母头 串口引脚定义

    转自:http://hi.baidu.com/zhy_myspace/item/ad1ab0f112a4da1ad7ff8cf9 DB9 公头 母头 串口引脚定义 1.RS-232端(DB9母头/孔型 ...