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

Android应用程序中的多个Activity的显示创建和调用_第1张图片Android应用程序中的多个Activity的显示创建和调用_第2张图片

Android应用程序中的多个Activity的显示创建和调用_第3张图片Android应用程序中的多个Activity的显示创建和调用_第4张图片

Android应用程序中的多个Activity的显示创建和调用_第5张图片



布局文件:



    

    
主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 {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}

	/**
	 * 用户想要打开第二个界面的时候
	 * 
	 * @param view
	 */
	public void openActivity(View view) {
		// 创建意图对象
		Intent intent = new Intent();
		// 方便调用setComponent与一个明确的类名。
		// 相当于创建了一个新的组件
		// 会话位置|指定要激活的具体的Activity
		intent.setClassName(this, "com.examp.manyactivity.SecondActivity");
		// 第二种方式,是在创建意图对象的时候进行指定Activity
		// Intent intent2 = new Intent(this, SecondActivity.class);

		// 激活一个Activity
		startActivity(intent);
	}

	/**
	 * 开启系统中的Activity
* 案例演示的是开启图库的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的虚拟机
* 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
* 必须要继承Activity
* Activity是系统的四大组件之一
* 操作系统想要找到Activity就必须在清单文件AndroidManifest.xml进行注册
* * * @author MartinDong * */ public class SecondActivity extends Activity { /** * 一般都会重写的方法,用途大都是初始化一些数据,和程序的界面
* Activity创建的时候进行调用 */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 设置显示的布局 setContentView(R.layout.activity_tow); } }

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




    

    

    

    

    

    


清单文件的配置:




    

    
    
    

        
        
        
        

            
            

                
                
                
                
            
        
        
        
    


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


Demo源码下载:

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








你可能感兴趣的:(Android基础)