Android中intent的使用
package com.duoguo.android;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
/**
?* @author Administrator
?*
?*/
public class FirstActivity extends Activity {
?/** Called when the activity is first created. */
?@SuppressWarnings("unused")
?@Override
?public void onCreate(Bundle savedInstanceState) {
??super.onCreate(savedInstanceState);
??setContentView(R.layout.main);
??TextView textView = (TextView) findViewById(R.id.myTextViewId);
??Button button = (Button) findViewById(R.id.myButtonId);
??button.setOnClickListener(new ButtonListener());// 添加事件监听器
?}
?class ButtonListener implements OnClickListener {
??public void onClick(View v) {
???Intent intent = new Intent();// 生成intent对象
???intent.putExtra("name", "admin");// 传递相应的键值对
???intent.setClass(FirstActivity.this, SecondActivity.class);// 请求到新的activity
???FirstActivity.this.startActivity(intent);// 启动intent对象
??}
?}
}
?
main.xml
<?xml version="1.0" encoding="utf-8"?>
<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/myTextViewId" android:layout_width="wrap_content"
??android:layout_height="wrap_content" android:text="@string/myTextView" />
?<Button android:id="@+id/myButtonId" android:layout_width="wrap_content"
??android:layout_height="wrap_content" android:text="@string/myButton" />
</LinearLayout>
?
/**
?*
?*/
package com.duoguo.android;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
/**
?* @author Administrator
?*
?*/
public class SecondActivity extends Activity {
?@Override
?protected void onCreate(Bundle savedInstanceState) {
??super.onCreate(savedInstanceState);
??setContentView(R.layout.second);
??TextView textView = (TextView) findViewById(R.id.intentTextViewId);
??Intent intent = getIntent();// 获取intent对象
??String value = intent.getStringExtra("name");// 获取键值对的值
??textView.setText(value);
?}
}
second.xml
<?xml version="1.0" encoding="utf-8"?>
<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/intentTextViewId"
??android:layout_width="wrap_content" android:layout_height="wrap_content"
??android:text="@string/secondTextView" />
</LinearLayout>
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
?<string name="app_name">Android应用小程序</string>
?<string name="myTextView">这是一段文本……</string>
?<string name="myButton">这是一个按钮</string>
?<string name="secondTextView">Intent的使用</string>
</resources>
AndroidMaifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
?package="com.duoguo.android" android:versionCode="1"
?android:versionName="1.0">
?<uses-sdk android:minSdkVersion="7" />
?<application android:icon="@drawable/icon" android:label="@string/app_name">
??<activity android:name=".FirstActivity" android:label="@string/app_name">
???<intent-filter>
????<action android:name="android.intent.action.MAIN" />
????<category android:name="android.intent.category.LAUNCHER" />
???</intent-filter>
??</activity>
??<activity android:name=".SecondActivity" android:label="@string/app_name" />
?</application>
</manifest>