Android 开发:第三日——两个Activity

  Android里新建的工程一般默认有一个Activity,今天学习如何在这个基础上再创建一个Activity,并且传值过去,通过Intent。

/*
* 创建Activity的要点
* 1.一个Activity就是一个类,这个类需要继承于Activity
* 2.需要重写onCreate方法
* 3.每一个Activity都需要在AndroidMainifest.xml文件当中进行配置
* 4.为Activity添加必要的控件
* 
*/ 

故先新建一个类,名为otherActivity,重写onCreate()方法,如图所示:

  创建一个xml布局文件,内容可以先从系统创建的Activity中复制一下,并添加一个TextView控件用来显示Intent传过来的值:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
               android:orientation="vertical"
               android:layout_width="fill_parent"
               android:layout_height="fill_parent">

    <TextView
        android:id="@+id/myTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
        
</LinearLayout>

  在AndroidManifest.xml文件中进行绑定:

<activity
     android:name=".otherActivity"
     android:label="@string/other">
</activity>

默认的Activity多了几行,如下所示,即开机运行的第一个Activity:

<activity
            android:name=".MainActivity"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

在原先Activity上添加一个Button控件,并添加一个监听器。

<Button 
        android:id="@+id/myButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
// 添加Button监听器
    class MyButtonListener implements android.view.View.OnClickListener{
        public void onClick(View v) {
            // TODO Auto-generated method stub
            // 生成一个Intent对象
            Intent intent = new Intent();
            // Intent可以在两个不同应用程序中的两个Activity间传递数据
            intent.putExtra("TestIntent", "123");
            intent.setClass(MainActivity.this, otherActivity.class);
            MainActivity.this.startActivity(intent);
        } 
    }

把Button控件与上面的监听器建立关联:

 // 下面函数的返回值是View,View是所有Android控件的父类
        Button myButton = (Button)findViewById(R.id.myButton);
        myButton.setText("第一个Button");
        myButton.setOnClickListener(new MyButtonListener());

在otherActivity中获取并显示Intent传的值:

// 获取Intent
        Intent intent = getIntent();
        String value = intent.getStringExtra("TestIntent");
        myTextView = (TextView)findViewById(R.id.myTextView);
        myTextView.setText(value);

OK!

每天努力一点点,加油!

------------------------------------------------------------------------------------------

作者:庞辉

出处:http://www.cnblogs.com/pang123hui/

本文基于署名 2.5 中国大陆许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名庞辉(包含链接).

posted @ 2012-12-19 23:57  云说风轻  阅读(1540)  评论(0编辑  收藏  举报