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的使用,码迷,mamicode.com

时间: 2024-10-24 21:28:44

Android项目---ActivityGroup的使用的相关文章

Cocos2dx 3.0开发环境搭建--Eclipse上构建一个Android项目

一.前言: 本篇主要介绍Cocos2d-x 3.0的一些基础内容,以及在Eclipse上上编译我们的Cocos2d-x项目,成功把Helloworld运行起来了.看完本篇博客之后,你就会知道Cocos2d-x 3.0竟然发生了如此大的变化,变得如此简单,环境搭建.项目创建.编译的方式更加人性化了. 二.环境准备: 1.下载ADT Bundle(Eclipse捆绑了SDK和ADT),或者是Eclipse安装了ADT插件. 2.安装JDK.NDK.Ant .Python,然后配置环境. 3.Coco

创建一个android项目与创建一个android虚拟设备

创建一个android项目 Navigator面板区点击右键-->New-->Android Application Project,打开New Android Applicaton窗口.输入Application Name(应用程序的名称,就是显示在手机上的名称,比如:微信),Project Name(项目名称,一般显示在eclipse上的项目名称),Package Name(指定它的java包名,比如:com.qq.weixin).Minimum Required SDK表示运行应用程序所

Android项目---语言适配

android多国语言文件夹 android多国语言文件夹文件汇总如下:(有些语言的书写顺序可能跟中文是相反的) 中文(中国):values-zh-rCN 中文(台湾):values-zh-rTW 中文(香港):values-zh-rHK 英语(美国):values-en-rUS 英语(英国):values-en-rGB 英文(澳大利亚):values-en-rAU 英文(加拿大):values-en-rCA 英文(爱尔兰):values-en-rIE 英文(印度):values-en-rIN

&#167;1.2 Android项目结构及“Hello World”应用解析

书接上文,我们创建一个新的Android项目,进入Android Studio开发页面,如下图: 左侧为项目工具窗口,通过项目工具窗口可以管理整个项目的相关文件右侧为代码编辑区,我们可以在这里进行Android程序的开发工作底部为调试区,在调试区可以进行程序的断点调试.日志打印,可以监视整个程序的内存消耗,从而有针对性的进行性能优化. 首先,通过查看左侧的项目工具窗口区,为大家介绍一个Android项目的基本结构: 如上图所示,在这里我们只需要关注图中app目录下的内容: build目录:构建目

gradle构建android项目

工具: Android Studio2.0 gradle-2.10 一.gradle文件 当我们新建一个android项目后,Andriod Studio会自动为我们创建多个gradle文件和目录,具体内容如下: 下面我们分别对这几个目录进行分析: 二.app下的build.gradle apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.3" de

Android项目导入error---SoftwareTestingHomework1

一.问题及分析 在做Android项目时,不可避免的需要将现成的代码直接导入Eclipse项目中.但是在导入过程中经常会出现正常的代码现在连导入包都会出错,情况如下: 经过比对正常项目的树和不正常项目的树,如图: 不正常项目的树:                      正常项目的树:              正常的项目比不正常的项目多了一个Android2.2的包. 二.解决方案 Android右击 -> Build Path -> Configure Build Path,在侧边栏里选

解决IDEA下运行android项目 No resource found that matches the given name &#39;Theme.AppCompat.Light&#39;.

1.右击项目选择 解决IDEA下运行android项目 No resource found that matches the given name 'Theme.AppCompat.Light'.

Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)

一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads-1859576.html Android SDK:http://developer.android.com/sdk/index.html ADT:

修改Eclipse中Android项目默认模板

修改Android新建项目Java代码模板 进入%ANDROIDHOME%\tools\templates\activities\BlankActivity\root\src\apppackage 复制SimpleActivity.java.ftl保存一份 打开SimpleActivity.java.ftl,删除下列代码 1 @Override 2 public boolean onCreateOptionsMenu(Menu menu) { 3 // Inflate the menu; thi