1. 程式人生 > >Android隱性傳值初識

Android隱性傳值初識

1、傳送端程式碼
 public void go(View view) {
        Intent intent = new Intent();
       Bundle bundle =  new Bundle();
        User user = new User();
        user.setAge(99);
        user.setName("Li");
      //  intent.putExtra("name","zhang");
      //  intent.putExtra("age",100);

        intent.setAction("user1");
        bundle.putSerializable(
"user",user); intent.putExtras(bundle); startActivity(intent); }

2、接收端接受全送過來的值

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        //Intent intent = this.getIntent();
      //  String name = intent.getStringExtra("name");
    
// int age = intent.getIntExtra("age", 120); // Log.i("dong", "onCreate....main2..."+name+".."+age); Intent intent = this.getIntent(); User user = (User)intent.getSerializableExtra("user"); Log.i("dong", "onCreate....main2..."+user.getName()+".."+user.getAge()); }

3、注意選擇serializable介面可以傳送一物件
4、隱性傳值必須在xmlz這樣寫

<activity android:name=".Main2Activity">
            <intent-filter>
                <action android:name="user1"></action>
                <category android:name="android.intent.category.DEFAULT"></category>
            </intent-filter>
        </activity>

上面是今天自己下課摸索的,晚上回去再寫點其他難一點的。