ch015 Android(安卓)ActivityGroup
--------------------------------------------素材----------------------------------------------------
|
|
|
--------------------------------------------AndroidManifest.xml----------------------------------
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.ch15"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!--我的账户页-->
<activityandroid:name=".AccountActivity"></activity>
<!--分类页-->
<activityandroid:name=".CategoryActivity"></activity>
<!--Home页-->
<activityandroid:name=".HomeActivity"></activity>
<!--更多页-->
<activityandroid:name=".MoreActivity"></activity>
<!--购物车页-->
<activityandroid:name=".ShopCartActivity"></activity>
</application>
</manifest>
--------------------------------------------activity_main.xml-------------------------------------
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!--tbar-->
<includelayout="@layout/tbar"/>
<!--body-->
<LinearLayout
android:id="@+id/body"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/body_back"android:layout_weight="1">
</LinearLayout>
<!--bbar-->
<includelayout="@layout/bbar"/>
</LinearLayout>
--------------------------------------------tbar.xml-----------------------------------------------
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"android:background="@drawable/bar_top"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/hello_world"/>
</LinearLayout>
--------------------------------------------bbar.xml-----------------------------------------------
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bar_bottom"android:layout_weight="0.01">
<RadioGroup
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"android:id="@+id/group">
<RadioButton
android:id="@+id/btnA"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:button="@drawable/bar_home_normal"/>
<RadioButton
android:id="@+id/btnB"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:button="@drawable/bar_treasure_normal"/>
<RadioButton
android:id="@+id/btnC"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:button="@drawable/bar_shoppingcart_normal"/>
<RadioButton
android:id="@+id/btnD"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:button="@drawable/bar_account_normal"/>
<RadioButton
android:id="@+id/btnE"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:button="@drawable/bar_more_normal"/>
</RadioGroup>
</LinearLayout>
--------------------------------------------activity_home.xml------------------------------------
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="home"/>
</RelativeLayout>
--------------------------------------------activity_category.xml---------------------------------
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="category"/>
</RelativeLayout>
--------------------------------------------activity_account.xml---------------------------------
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="account"/>
</RelativeLayout>
--------------------------------------------activity_shopcart.xml--------------------------------
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="shopcart"/>
</RelativeLayout>
--------------------------------------------activity_more.xml-----------------------------------
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="more"/>
</RelativeLayout>
--------------------------------------------MainActivity.java-----------------------------------
packagecom.ch15;
importandroid.app.ActivityGroup;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.widget.LinearLayout;
importandroid.widget.RadioGroup;
importandroid.widget.RadioGroup.OnCheckedChangeListener;
importandroid.widget.TextView;
/**
*
*项目名称:com.ch15
*类名称:MainActivity
*类描述:启动页面
*创建人:方勇
*创建时间:2012-11-23下午10:26:03
*Copyright(c)方勇-版权所有
*/
publicclassMainActivityextendsActivityGroup{
/*底部菜单,bbar*/
privateRadioGroupgroup;
/*中间部分,body*/
privateLinearLayoutbody;
/*顶部菜单,tbar*/
privateTextViewview_title;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViews();
setListeners();
}
privatevoidfindViews(){
group=(RadioGroup)findViewById(R.id.group);
body=(LinearLayout)findViewById(R.id.body);
view_title=(TextView)findViewById(R.id.title);
}
privatevoidsetListeners(){
group.setOnCheckedChangeListener(onCheckedChangeListener);
}
privateOnCheckedChangeListeneronCheckedChangeListener=newOnCheckedChangeListener(){
@Override
publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){
body.removeAllViews();
switch(checkedId){
/*Home页*/
caseR.id.btnA:
/*设置跳转*/
IntenthomeIntent=newIntent();
homeIntent.setClass(MainActivity.this,HomeActivity.class);
/*
*1、Activity和Task(栈)的关系
*栈(Task)就像一个容器,而Activity就相当与填充这个容器的东西,
*第一个东西(Activity)则会处于最下面,最后添加的东西(Activity)则会在最低端。从Task中取出东西(Activity)则是从最顶端取出,也
*就是说最先取出的是最后添加的东西(Activity),一次类推,最后取出的是第一次添加的Activity,
*而Activity在Task中的顺序是可以控制的,那则在Activity跳转时用到IntentFlag
*
*2、Intent.FLAG
*如果activity在task存在,拿到最顶端,不会启动新的Activity
*intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
*
*如果activity在task存在,将Activity之上的所有Activity结束掉
*intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
*
*默认的跳转类型,将Activity放到一个新的Task中
*intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
*
*如果Activity已经运行到了Task,再次跳转不会再运行这个Activity
*intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
*/
homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
/*获取跳转页面Activity绑定的Layout视图*/
ViewhomeView=getLocalActivityManager().startActivity("home",homeIntent).getDecorView();
/*添加Layout到Body布局中*/
body.addView(homeView);
/*设置标题文本*/
view_title.setText("home");
break;
/*分类页*/
caseR.id.btnB:
/*设置跳转*/
IntentcategoryIntent=newIntent();
categoryIntent.setClass(MainActivity.this,CategoryActivity.class);
categoryIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
ViewcategoryView=getLocalActivityManager().startActivity("category",categoryIntent).getDecorView();
body.addView(categoryView);
view_title.setText("category");
break;
/*购物车页*/
caseR.id.btnC:
/*设置跳转*/
IntentshopcartIntent=newIntent();
shopcartIntent.setClass(MainActivity.this,ShopCartActivity.class);
shopcartIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
ViewshopcartView=getLocalActivityManager().startActivity("shopcart",shopcartIntent).getDecorView();
body.addView(shopcartView);
view_title.setText("shopcart");
break;
/*我的账户页*/
caseR.id.btnD:
/*设置跳转*/
IntentaccountIntent=newIntent();
accountIntent.setClass(MainActivity.this,AccountActivity.class);
accountIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
ViewaccountView=getLocalActivityManager().startActivity("account",accountIntent).getDecorView();
body.addView(accountView);
view_title.setText("account");
break;
/*更多页*/
caseR.id.btnE:
/*设置跳转*/
IntentmoreIntent=newIntent();
moreIntent.setClass(MainActivity.this,MoreActivity.class);
moreIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
ViewmoreView=getLocalActivityManager().startActivity("more",moreIntent).getDecorView();
body.addView(moreView);
view_title.setText("more");
break;
}
}
};
}
--------------------------------------------HomeActivity.java-----------------------------------
packagecom.ch15;
importandroid.app.Activity;
importandroid.os.Bundle;
/**
*
*项目名称:com.ch15
*类名称:HomeActivity
*类描述:首页
*创建人:方勇
*创建时间:2012-11-23下午10:25:51
*Copyright(c)方勇-版权所有
*/
publicclassHomeActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
}
}
--------------------------------------------CategoryActivity.java-------------------------------
packagecom.ch15;
importandroid.app.Activity;
importandroid.os.Bundle;
/**
*
*项目名称:com.ch15
*类名称:CategoryActivity
*类描述:分类页
*创建人:方勇
*创建时间:2012-11-23下午10:25:34
*Copyright(c)方勇-版权所有
*/
publicclassCategoryActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_category);
}
}
--------------------------------------------AccountActivity.java--------------------------------
packagecom.ch15;
importandroid.app.Activity;
importandroid.os.Bundle;
/**
*
*项目名称:com.ch15
*类名称:AccountActivity
*类描述:我的账户页
*创建人:方勇
*创建时间:2012-11-23下午10:25:18
*Copyright(c)方勇-版权所有
*/
publicclassAccountActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_account);
}
}
--------------------------------------------ShopCartActivity.java-------------------------------
packagecom.ch15;
importandroid.app.Activity;
importandroid.os.Bundle;
publicclassShopCartActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shopcart);
}
}
--------------------------------------------MoreActivity.java-----------------------------------
packagecom.ch15;
importandroid.app.Activity;
importandroid.os.Bundle;
publicclassMoreActivityextendsActivity{
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_more);
}
}
--------------------------------------------效果图------------------------------------------------
<!--EndFragment-->
更多相关文章
- android API版本对应的系统版本及Android获取手机和系统版本等信
- EditText属性
- Android(安卓)系统UI设计规则
- Android系统自带样式(android:theme)解析
- ANDROID 单元测试
- Android命令大全
- ch028 Android(安卓)断点续传
- ch016 Android(安卓)自定义对话框.
- ch031 Android(安卓)AsyncTask