布局文件:

<LinearLayout xmlns: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"android:orientation="vertical"tools:context=".MainActivity" ><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/hello_world" /><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="openActivity"android:text="开启第二个Activity" /><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="openSystemActivity"android:text="开启系统的Activity" /><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:onClick="checkConnection"android:text="检測网络状态" /></LinearLayout>

主Activity的代码

package com.examp.manyactivity;import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;/*** 案例演示的是显示的激活Activity* * @author MartinDong* */
public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}/*** 用户想要打开第二个界面的时候* * @param view*/public void openActivity(View view) {// 创建意图对象Intent intent = new Intent();// 方便调用setComponent与一个明白的类名。// 相当于创建了一个新的组件// 会话位置|指定要激活的详细的Activityintent.setClassName(this, "com.examp.manyactivity.SecondActivity");// 另外一种方式,是在创建意图对象的时候进行指定Activity// Intent intent2 = new Intent(this, SecondActivity.class);// 激活一个ActivitystartActivity(intent);}/*** 开启系统中的Activity<br>* 案例演示的是开启图库的Activity* * @param view*/public void openSystemActivity(View view) {/** 05-31 07:42:44.581: I/ActivityManager(150): START* {act=android.intent.action.MAIN* cat=[android.intent.category.LAUNCHER] flg=0x10200000* cmp=com.android.gallery/com.android.camera.GalleryPicker u=0} from* pid 282*/Intent intent = new Intent();intent.setClassName("com.android.gallery","com.android.camera.GalleryPicker");startActivity(intent);}/*** 检測网路状态* * @param view*/public void checkConnection(View view) {/** 05-31 08:03:01.848: I/ActivityManager(150): START* {act=android.intent.action.MAIN cmp=com.android.settings/.SubSettings* (has extras) u=0} from pid 306 因为这里4.0的网络的管理须要传入附加数据,本功能使用2.3的虚拟机<br>* 05-31 08:05:47.072: I/ActivityManager(61): Starting: Intent {* act=android.intent.action.MAIN* cmp=com.android.settings/.WirelessSettings } from pid 168*/// 检測网路的连接状态// 创建连接管理对象ConnectivityManager cm = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);// 须要的权限 android.Manifest.permission.ACCESS_NETWORK_STATE// 获取网络的连接信息NetworkInfo info = cm.getActiveNetworkInfo();// 假设没有不论什么的网络信息info为null;if (info != null && info.isConnected()) {Toast.makeText(this, "网络可用......", Toast.LENGTH_SHORT).show();} else {Toast.makeText(this, "网不可用,请设置......", Toast.LENGTH_SHORT).show();Intent intent = new Intent();intent.setClassName("com.android.settings","com.android.settings.WirelessSettings");startActivity(intent);}}
}

第二个Activity文件:

package com.examp.manyactivity;import android.app.Activity;
import android.os.Bundle;/*** 自己定义的Activity<br>* 必需要继承Activity<br>* Activity是系统的四大组件之中的一个<br>* 操作系统想要找到Activity就必须在清单文件AndroidManifest.xml进行注冊<br>* * * @author MartinDong* */
public class SecondActivity extends Activity {/*** 一般都会重写的方法,用途大都是初始化一些数据,和程序的界面<br>* Activity创建的时候进行调用*/@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 设置显示的布局setContentView(R.layout.activity_tow);}}

第二个Activity相应的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><RatingBarandroid:id="@+id/ratingBar1"android:layout_width="wrap_content"android:layout_height="wrap_content" /><RatingBarandroid:id="@+id/ratingBar2"android:layout_width="wrap_content"android:layout_height="wrap_content" /><CheckedTextViewandroid:id="@+id/checkedTextView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="CheckedTextView" /><Spinnerandroid:id="@+id/spinner1"android:layout_width="match_parent"android:layout_height="wrap_content" /><ProgressBarandroid:id="@+id/progressBar1"style="?android:attr/progressBarStyleHorizontal"android:layout_width="wrap_content"android:layout_height="wrap_content" /><ProgressBarandroid:id="@+id/progressBar2"style="?android:attr/progressBarStyleLarge"android:layout_width="246dp"android:layout_height="match_parent" /></LinearLayout>

清单文件的配置:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.examp.manyactivity"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="18" /><!-- icon:指定应用程序的图标;label:指定应用程序的名称; --><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><!-- Activity的注冊 --><!-- 假设Activity不进行icon,label的设置,那么将默认的使用应用application的icon,label 的设置 --><!-- name指定的是布局文件相应的Activity类 --><activityandroid:name="com.examp.manyactivity.MainActivity"android:label="@string/app_name" ><!--  --><intent-filter><!-- 告诉Android的系统这是应用的主界面 --><action android:name="android.intent.action.MAIN" /><!-- 告诉Android的系统创建一个应用图标 --><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><activityandroid:name="com.examp.manyactivity.SecondActivity"android:label="@string/app_name" ></activity></application></manifest>

注:本案例的网络查看状态仅仅能在2.3的模拟器上使用;

Demo源代码下载:

http://download.csdn.net/detail/u011936142/7429455

转载于:https://www.cnblogs.com/mengfanrong/p/3988847.html

Android应用程序中的多个Activity的显示创建和调用相关推荐

  1. 在 Android 应用程序中使用 SQLite 数据库以及怎么用

    part one : android SQLite 简单介绍 SQLite 介绍 SQLite 一个非常流行的嵌入式数据库.它支持 SQL 语言,而且仅仅利用非常少的内存就有非常好的性能.此外它还是开 ...

  2. 在 Android 应用程序中使用 Internet 数据

    为什么80%的码农都做不了架构师?>>>    简介: 您的很多 Android 应用程序都需要与 Internet 数据交互,这些数据采用各种格式.本文将带您构建一个 Androi ...

  3. Android程序 地图,在定制的Android应用程序中使用谷歌地图

    我收到以下问题(显示在LogCat中).我希望any1可以帮助我,因为我是android应用程序开发的新手.在定制的Android应用程序中使用谷歌地图 11-17 16:50:38.087: E/A ...

  4. android程序root权限,android应用程序中应用root权限

    android应用程序中使用root权限 要在android应用程序中使用root权限,那么运行程序的设备必须具有root权限. http://www.eoeandroid.com/code/2012 ...

  5. 绕过Android虚拟机,如何绕过android应用程序中的模拟器检测

    如何绕过android应用程序中的模拟器检测 介绍 在模拟器上测试一些android应用程序时,它总会显示应用程序与CPU不兼容,或者在模拟器上安装应用程序时会出现一些错误 我会告诉你如何轻松绕过 留 ...

  6. 如何在Android应用程序中实现后台服务?

    在Android应用程序中实现后台服务,可以通过继承Service类来实现.下面是一个简单的示例代码: 首先,在AndroidManifest.xml文件中注册服务: <manifest xml ...

  7. android在程序中打开另一个程序

    在开发android应用的时候,在一些情况下要有前置条件,比如这边所说的要启动时要确保别的应用程序服务已经打开  或者在操作中启动别的应用等. 先来一段google上的代码: 1. 已知包名和类名的情 ...

  8. Android应用程序中的DVM和Linux中进程的区别

    DVM指的是dalvick的虚拟机,每一个Android应用程序都是在它自己的进程中进行的,都拥有一个独立的dalvick虚拟机的实例,而每一个DVM都是Linux中的一个进程. Android的DV ...

  9. Android读取程序中文件

    近日,需要完成一个程序,需要把相关文件放到Android程序中,并共Android读取. Android读写文件很简单,如果用JAVA语言的话,就是JAVA文件读写. 真正的问题在于,在Android ...

最新文章

  1. C# 打印 长字符串自动换行
  2. 揭密 extern C
  3. 《VMware 网络技术:原理与实践》—— 3.2 以太网
  4. .net core通过多路复用实现单服务百万级别RPS吞吐
  5. 开源GIS解决方案,暨GeoServer+OpenLayer结合开发总结
  6. Java基础提升高级API
  7. 《手把手教你学C语言》学习笔记(10)--- 程序的循环控制
  8. C/C++中字符串切割(split)
  9. 树莓派 HC-SRO4超声波测距模块的使用
  10. C/C++的转义字符
  11. idea 去掉author波浪线
  12. Win10应用商店无法加载页面,错误代码0x80131500怎么办
  13. ubuntu 保存命令行操作记录
  14. JQuery中 JSON 兼容性问题(针对ie8)
  15. RiskCloud干货 | 对LOPA分析软件的深入研究
  16. 【深入理解JVM】:HotSpot垃圾收集器
  17. Unity3D学习:射击小游戏——飞碟世界
  18. photoshop 高手之路
  19. GD32F10x的侵入检测事件
  20. 一步一步教你制作的第一个 WordPress 插件

热门文章

  1. html页面转pdf
  2. sublime text3 快速生成方法注释
  3. 一个完整的软件项目开发流程,软件过程,软件生命周期
  4. Steam游戏Hacknet部分命令备份
  5. 2019百度之星程序设计大赛 1005 Seq
  6. 【WC2008】【BZOJ1271】秦腾与教学评估(二分,前缀和,奇偶性乱搞)
  7. html实现横向轮播,js实现横向轮播效果
  8. JavaScript内置对象→对象、系统函数、Date日期对象、String字符串对象、Math对象、Number数字对象、Object对象、Boolean对象、Error对象
  9. 桌面版应用_【Nordic博文分享系列】开发你的第一个NCS(Zephyr)应用程序
  10. 树桩数组求逆序数+离散化(数太大)