Android项目---ActivityGroup的使用
ActivityGroup在一年前已经被说明不用了,但是腾讯QQ,新浪微博上也不乏ActivityGroup的身影。所以,即使是过时的东西,也有学习的必要,当然项目中也是可以添加的。在网上找了一个博客,不过还是想自己理解一下其中的因原。http://www.cnblogs.com/answer1991/archive/2012/05/08/2489844.html
mainactivity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="0.0px" > <LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" > <LinearLayout
android:id="@+id/container"
android:layout_width="fill_parent"
android:layout_height="0.0dip"
android:orientation="horizontal"
android:layout_weight="1.0" /> <RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:gravity="center_vertical"
android:orientation="horizontal" > <Button
android:id="@+id/radio_button0"
android:layout_marginTop="2.0dip"
android:drawableTop="@android:drawable/ic_menu_call"
android:text="按钮1" /> <Button
android:id="@+id/radio_button1"
android:layout_marginTop="2.0dip"
android:drawableTop="@android:drawable/ic_menu_camera"
android:text="按钮2" /> <Button
android:id="@+id/radio_button2"
android:layout_marginTop="2.0dip"
android:drawableTop="@android:drawable/ic_menu_agenda"
android:text="按钮3" /> <Button
android:id="@+id/radio_button3"
android:layout_marginTop="2.0dip"
android:drawableTop="@android:drawable/ic_menu_delete"
android:text="按钮4" /> <Button
android:id="@+id/radio_button4"
android:layout_marginTop="2.0dip"
android:drawableTop="@android:drawable/ic_menu_help"
android:text="按钮5" />
</RadioGroup>
</LinearLayout> </LinearLayout>
其实这个layout的结构挺简单的:
功能代码:
1.定义一个生成Activity的工厂
protected void setContainerView(String activityName,
Class<?> activityClassTye) {
localActivityManager = getLocalActivityManager();
viewgroup = getContainer();
viewgroup.removeAllViews();
Activity containerActivity = localActivityManager
.getActivity(activityName);
if (containerActivity == null) {
localActivityManager.startActivity(activityName, new Intent(this,
activityClassTye).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
}
viewgroup.addView(localActivityManager.getActivity(activityName)
.getWindow().getDecorView(), new LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
}
2.找到自定义id加在Activity的View
protected ViewGroup getContainer() {
return (ViewGroup) findViewById(R.id.container);
}
3.添加进入子Activity的intent事件
setContainerView(activity_id0, Activity0.class);//设置默认的activity显示
4.添加按钮事件就可以在主Activity中随意切换到子Activity中了。
效果图:
Android项目---ActivityGroup的使用的更多相关文章
- Android——eclipse下运行android项目报错 Conversion to Dalvik format failed with error 1解决
在eclipse中导入android项目,项目正常没有任何错误,但是运行时候会报错,(clean什么的都没用了.....)如图: 百度大神大多说是jdk的问题,解决: 右键项目-Properties如 ...
- eclipse — 导入android项目后识别成java项目的问题及解决
最近在eclipse导入android项目的时候遇到了奇葩问题,再此记录 遇到的问题就是:将完好的android项目导入到eclipse的时候,原本这是一个很容易的事情,但是导入成功后发现,,,靠ec ...
- 用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
- Android之什么是Activity和常用的ADB命令以及Android项目结构的认识
总结一下之前学习Android的一些内容 一: Android常用的ADB命令(adb android调试桥) 1.adb devices 查看模拟器设备并重新连接. 2.adb ki ...
- eclipse将android项目生成apk并且给apk签名
转载:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作 ...
- Android开发学习——Android项目的目录结构
Android项目的目录结构: 资源文件夹: 清单配置文件: Android的四大组件在使用前全部需要在清单文件中配置 <?xml version="1.0" encodin ...
- Android项目实战(二十五):Android studio 混淆+打包+验证是否成功
前言: 单挑Android项目,最近即时通讯用到环信,集成sdk的时候 官方有一句 在 ProGuard 文件中加入以下 keep. -keep class com.hyphenate.** {*;} ...
- Android项目实战(二十四):项目包成jar文件,并且将工程中引用的jar一起打入新的jar文件中
前言: 关于.jar文件: 平时我们Android项目开发中经常会用到第三方的.jar文件. 其实.jar文件就是一个类似.zip文件的压缩包,里面包含了一些源代码,注意的是.jar不包含资源文件(r ...
- 初次尝试用Kotlin实现Android项目
Kotlin: The Swift of Android 起这个文内标题的原因很简单,就是对Kotlin抱有希望--能使Android的开发更简洁.高效及安全.知道Kotlin是从简书的一篇短文,越来 ...
随机推荐
- 《Java并发编程实战》第二章 线程安全 札记
一个.什么是线程安全 编写线程安全的代码 其核心是管理国事访问的操作. 共享,可变的状态的訪问 - 前者表示多个线程訪问, 后者声明周期内发生改变. 线程安全性 核心概念是正确性.某个类的行为与其规范 ...
- spring与mybatis集成和事务控制
一个. 基本介绍 本文将使用spring整合mybatis, 并加入事务管理, 以此为记, 方便以后查阅. 二. 样例 1. 代码结构图: 2. 建表语句: DROP DATABASE test; C ...
- IT薪酬
新加坡IT薪酬 2014-06-12 12:51 by 圣殿骑士, 8856 阅读, 37 评论, 收藏, 编辑 很多朋友发邮件或留言问我关于新加坡IT薪酬的问题,由于前段时间比较忙,所以没有及时一一 ...
- 设计模式--模板方法 And State模式
1.模板方法 钩子: 在抽象基类已经有默认的定义,子类选择是否覆盖它 在模板方法模式中, 抽象基类中使用 钩子函数(子类视情况是否覆盖) 来达到控制模板方法中 流程控制的 目的 设计原则: ...
- jsp 行动标签
jsp行动标签 签.它影响JSP执行时的功能. 1.include动作标签 <jsp:include page="文件名称字"/> 或 <jsp:include ...
- TortoiseGit push失败原因小结(转)
花了我一个晚上,终于弄明白为什么总是 push 失败的原因了!竟然是因为我用的是注册的用户名而不是邮箱名……囧死. 另外搞清楚了一个问题,就是 Git 和远程仓库交互有两种方式,即 https 方式和 ...
- What day is it
Description Today is Saturday, 17th Nov,2007. Now, if i tell you a date, can you tell me what day it ...
- IOS的UITextField,UIButton,UIWebView它描述的一些属性和IOS提示图像资源
有时UI要开发的资源与实际frame不符.这一次,我们要绘制图片 UIImage* image = [[UIImage imageNamed:@"text_field_bg.png" ...
- 深入了解setInterval方法
相信大家对setInterval方法肯定非常熟悉,但不少人对其缺乏深入的了解,致使当一个flash里有多个setInterval的时候就容易混淆,该清除的间隔lID没有清除,不该清除的时候却清除了.对 ...
- Before和After用法小结
Before和After用法小结 定义 :before 选择器在被选元素的内容前面插入内容.:after选择器在被选元素的内容后面插入内容.(注:必须包含content 属性) 一.特性:不能左右:e ...