android 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"> <Button android:id="@ id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button1" /> <Button android:id="@ id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button2" /> <Button android:id="@ id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button3" /> </LinearLayout>
second.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <Button android:id="@ id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button2" /> </LinearLayout>
third.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <Button android:id="@ id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="button3" /> </LinearLayout>
后端代码:
MainActivity.java
package com.test;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
public class MainActivity extends Activity implements OnClickListener {
android.widget.Button button1;
android.widget.Button button2;
android.widget.Button button3;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button1 = (android.widget.Button) this.findViewById(R.id.button1);
button1.setOnClickListener(this);
button2 = (android.widget.Button) this.findViewById(R.id.button2);
button2.setOnClickListener(this);
button3 = (android.widget.Button) this.findViewById(R.id.button3);
button3.setOnClickListener(this);
}
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.button1:
android.content.Intent intent = new android.content.Intent();
intent.putExtra("name", "handson");
intent.putExtra("age", 1);
com.pojo.Person person = new com.pojo.Person();
person.setId(1);
person.setName("root");
person.setPassword("root");
intent.putExtra("person", person);
intent.setClass(this, SecondActivity.class);
this.startActivity(intent);
break;
case R.id.button2:
android.content.Intent intent2 = new android.content.Intent();
intent2.setClass(this, SecondActivity.class);
this.startActivityForResult(intent2, 300);
break;
case R.id.button3:
android.content.Intent intent3 = new android.content.Intent();
intent3.setAction("com.android.anbo.xueshu");
/*
* System.out.println(Uri.parse("anbo://xinlong:90").getScheme());
* System.out.println(Uri.parse("anbo://xinlong:90").getHost());
* System.out.println(Uri.parse("anbo://xinlong:90").getPort());
* System
* .out.println(Uri.parse("anbo://xinlong:90/xueshu?name=aaaa")
* .getQueryParameter("name"));
*/
intent3.setData(Uri.parse("anbo://xinlong:90/xueshu?name=aaaa"));
this.startActivity(intent3);
break;
}
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
System.out.println("result");
System.out.println(requestCode);
System.out.println(resultCode);
System.out.println(data.getStringExtra("name"));
}
}
SecondActivity.java
package com.test;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
public class SecondActivity extends Activity implements OnClickListener {
android.widget.Button button2;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
/*
* System.out.println(this.getIntent().getStringExtra("name"));
* System.out.println(this.getIntent().getIntExtra("age", 0));
* com.pojo.Person person = (com.pojo.Person) this.getIntent()
* .getSerializableExtra("person"); System.out.println(person.getId());
* System.out.println(person.getName());
* System.out.println(person.getPassword());
*/
button2 = (android.widget.Button) this.findViewById(R.id.button2);
button2.setOnClickListener(this);
}
public void onClick(View v) {
Intent i = new Intent();
i.putExtra("name", "sa");
this.setResult(200, i);
this.finish();
// android.content.Intent intent = new android.content.Intent();
// intent.setClass(this, MainActivity.class);
// this.startActivity(intent);
}
}
ThridActivity.java
package com.test;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
public class ThridActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.thrid);
System.out.println(this.getIntent().getData().getScheme());
System.out
.println(this.getIntent().getData().getQueryParameter("name"));
}
}



评论