`
gjhappyyy
  • 浏览: 260561 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

ActivityGroup简介

 
阅读更多

ActivityGroup效果和TabHost效果类似。TabHost限制较多,自己定制不容易使用。

下面举例说明一下ActivityGroup的使用。

两个按钮,点击不同按钮切换不同的activity。

private Button button1; 
	private Button button2;
	private LinearLayout container;
	private OnClickListener l = new OnClickListener(){

		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			switch(v.getId()){
			case R.id.button1:
				switchActivity(0);
				break;
			case R.id.button2:
				switchActivity(1);
				break;
			}
		}
		
	};
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		
		setContentView(R.layout.main);
		
		button1 = (Button)findViewById(R.id.button1);
		button2 = (Button)findViewById(R.id.button2);
		container = (LinearLayout) findViewById(R.id.container);
		
		
		button1.setOnClickListener(l);
		button2.setOnClickListener(l);
		
		switchActivity(0);
	}
	
	private void switchActivity(int id){
		container.removeAllViews();
		Intent intent = null;
		switch(id){
		case 0:
			intent = new Intent(this,TestActivity1.class);
			break;
		case 1:
			intent = new Intent(this,TestActivity2.class);
			break;
		}
		intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
		Window  subActivity = getLocalActivityManager().startActivity("subActivity", intent);
		container.addView(subActivity.getDecorView(),LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
	}

xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" android:layout_width="fill_parent"
	android:layout_height="fill_parent">
	<LinearLayout android:orientation="horizontal"
		android:layout_width="fill_parent" android:layout_height="wrap_content">
		<Button android:id="@+id/button1" android:layout_width="wrap_content"
			android:layout_height="wrap_content" android:text="窗体1" />
		<Button android:id="@+id/button2" android:layout_width="wrap_content"
			android:layout_height="wrap_content" android:text="窗体2" />
	</LinearLayout>
	<LinearLayout android:id="@+id/container" android:orientation="horizontal"
		android:layout_width="fill_parent" android:layout_height="fill_parent"
		android:background="#0000ff">
	</LinearLayout>
</LinearLayout>

  

 从”窗口1“切换至”窗口2“时,事件执行的先后顺序如下:

 

INFO/TestActivity1(11718): onPause
INFO/TestActivity1(11718): onStop
INFO/TestActivity1(11718): onDestroy
INFO/TestActivity2(11718): onStart
INFO/TestActivity2(11718): onResume

 

 

分享到:
评论
1 楼 lhc966 2011-12-07  
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
这句话不要写,不然点击跳转到当前Activity的Button,即使当前Activity已经在显示也会重新onCrete一次

相关推荐

    ActivityGroup实现Activit栈

    在Android开发中,ActivityGroup是早些版本API中提供的一种特殊类型的Activity,它允许开发者在一个TabHost或者帧布局(FrameLayout)中嵌套多个Activity,从而实现类似iOS中UINavigationController的堆叠管理器效果...

    activitygroup

    在Android开发中,`ActivityGroup`是一个特殊类型的`Activity`,它允许我们在一个父`Activity`中嵌套多个子`Activity`。这个概念通常用于实现类似TabHost或者多级导航的效果,使得用户可以在一个单一的栈结构中进行...

    使用ActivityGroup管理Activity

    然而,有时开发者可能需要在同一个栈中管理多个Activity,这时`ActivityGroup`就派上了用场。`ActivityGroup`是早期Android版本(Android 2.x)提供的一种特殊类型的`ViewGroup`,允许在同一个`TabHost`或`...

    Android中ActivityGroup的应用

    ActivityGroup的用法,头部和底部为固定布局中间动态显示界面 并在中间布局实现手势滑动效果,自定义SlidingDrawer(抽屉)效果,在ActivityGroup里执行跳转等功能。至于在Android在ActivityGroup里执行跳转详细介绍 ...

    android ActivityGroup的demo

    在Android开发中,ActivityGroup是一种特殊的Activity容器,它允许在一个Activity内部嵌套多个子Activity,形成类似多级菜单或者Tab效果。本示例"android ActivityGroup的demo"将深入探讨如何使用ActivityGroup来...

    使用ActivityGroup来切换Activity和Layout

    在这种情况下,通常我们会选择使用TabHost或者Fragment等组件来实现,但如果你正在使用的是Android早期版本(API Level ),`ActivityGroup`是一个可行的选择。`ActivityGroup`是`TabActivity`的一种替代方案,它...

    Android开发—使用ActivityGroup来切换Activity和Layout.pdf

    在Android开发中,ActivityGroup是一种特殊类型的Activity,它允许开发者在一个Activity内嵌套其他Activity,实现类似TabHost或Fragment的效果,但这是在Android早期版本(API级别较低)中的一种实现方式。...

    gridview+activityGroup实现tab分页

    在Android开发中,创建一个具有分页功能的Tab布局是常见的需求,这通常涉及到GridView和ActivityGroup的结合使用。下面将详细解释这两个组件以及如何利用它们实现Tab分页。 首先,`GridView`是Android的一种视图...

    ActivityGroup和GridView实现标签分页

    在Android开发中,ActivityGroup和GridView是两种常用的组件,它们可以协同工作来实现标签分页的效果,这是一种常见的用户界面设计模式,通常用于展示多个类似内容的页面,让用户通过标签进行切换浏览。本篇将深入...

    ActivityGroup应用实例

    在Android开发中,ActivityGroup是一种特殊的Activity类型,它允许开发者在一个Activity中嵌套其他Activity,形成多层级的界面结构。这个“ActivityGroup应用实例”应该是一个详细的教程,旨在帮助开发者理解如何...

    tabhost和ActivityGroup的组合使用

    在Android开发中,TabHost和ActivityGroup是两个关键组件,它们常常被用来构建具有标签页切换功能的应用界面。本文将详细讲解如何将这两个组件结合使用,以实现多Activity间的高效跳转和堆栈管理。 首先,TabHost是...

    TabHost, ActivityGroup 的使用例子

    在Android开发中,TabHost和ActivityGroup是两个重要的组件,它们用于实现复杂的界面布局和交互。TabHost主要用于创建带有标签页的应用界面,而ActivityGroup则允许你在同一个父Activity下管理多个子Activity,使得...

    ActivityGroup之Activity内跳转和外跳转

    ActivityGroup是早期Android SDK中的一个特殊类型,它允许在一个Activity中嵌套多个子Activity,形成类似TabHost或者多窗口的效果。然而,从Android 3.0(API级别11)开始,ActivityGroup被废弃,推荐使用Fragment来...

    ActivityGroup框架

    在Android开发中,ActivityGroup是一种特殊的布局管理器,它允许在一个TabHost中嵌套多个Activity。这个框架的设计目的是为了提供更复杂的应用结构,使得在单个Tab内可以切换不同的Activity,而不仅仅是显示单一内容...

    ActivityGroup之activity内跳转和外跳转

    ActivityGroup是一种旧版的Android实现,它允许在一个Activity中嵌套多个子Activity,这在早期版本的Android系统中常用于实现类似TabHost的效果。然而,自Android 3.0(API级别11)起,Android引入了Fragment的概念...

    用ActivityGroup解决TabHost中多个Activity跳转问题

    为了解决这些问题,开发者引入了ActivityGroup,它允许在一个TabHost内嵌套多个Activity,使得在同一层级的Activity间切换更为便捷。 ActivityGroup是Android提供的一个特殊类型的Activity,它允许我们在一个...

    Android TabHost内嵌ActivityGroup界面管理源码.zip

    为ActivityGroup能往界面上不停的添加界面,这样就能实现界面的叠加效果,但是你叠加的时候就会发现,叠加上去的界面不会显示下面的选项卡, 而且你的返回键,也不好使。这个源码就是用到TabActivity内嵌ActivityGroup...

    安卓Android源码——TabHost内嵌ActivityGroup界面管理源码.zip

    在安卓应用开发中,TabHost和ActivityGroup是两种常见的组件,用于实现多页面的导航和管理。本资源“安卓Android源码——TabHost内嵌ActivityGroup界面管理源码.zip”提供了一个实例,帮助开发者理解如何在TabHost中...

    基于GridView和ActivityGroup实现的TAB分页(附源码)

    在Android开发中,创建带有分页功能的界面是常见的需求,而使用`GridView`和`ActivityGroup`实现分页是一种不常用但仍然有效的方法。在本文中,我们将深入探讨如何结合这两种组件来创建一个TAB分页的效果。 首先,`...

    Android源码——TabHost内嵌ActivityGroup界面管理源码_new_17.7z

    在Android开发中,TabHost和ActivityGroup是两个关键组件,常用于实现多页面的导航和界面管理。在本文中,我们将深入探讨如何使用TabHost内嵌ActivityGroup来创建复杂的用户界面,并通过源码分析理解其工作原理。 ...

Global site tag (gtag.js) - Google Analytics