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