歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android學習筆記之Bundle

Android學習筆記之Bundle

日期:2017/3/1 10:35:37   编辑:Linux編程

1.介紹

用於不同Activity之間的數據傳遞

2.重要方法

clear():清除此Bundle映射中的所有保存的數據。
clone():克隆當前Bundle
containsKey(String key):返回指定key的值
getString(String key):返回指定key的字符
hasFileDescriptors():指示是否包含任何捆綁打包文件描述符
isEmpty():如果這個捆綁映射為空,則返回true
putString(String key, String value):插入一個給定key的字符串值
readFromParcel(Parcel parcel):讀取這個parcel的內容
remove(String key):移除指定key的值
writeToParcel(Parcel parcel, int flags):寫入這個parcel的內容
Android2Activity.java

[java]
  1. package Android2.test;
  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. public class Android2Activity extends Activity {
  10. private EditText et = null;
  11. private Button button = null;
  12. @Override
  13. public void onCreate(Bundle savedInstanceState)
  14. {
  15. super.onCreate(savedInstanceState);
  16. setContentView(R.layout.main);
  17. et = (EditText)findViewById(R.id.edit);
  18. button = (Button)findViewById(R.id.button);
  19. button.setOnClickListener(new ButtonListener());
  20. }
  21. public class ButtonListener implements OnClickListener{
  22. public void onClick(View arg0) {
  23. // TODO Auto-generated method stub
  24. Bundle bundle = new Bundle();
  25. bundle.putString("Name", et.getText().toString());
  26. Intent intent=new Intent(Android2Activity.this,bundle.class);
  27. intent.putExtras(bundle);
  28. startActivity(intent);
  29. }
  30. }
  31. }

main.xml

[java]
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="fill_parent"
  5. android:orientation="vertical" >
  6. <EditText
  7. android:id="@+id/edit"
  8. android:layout_width="fill_parent"
  9. android:layout_height="wrap_content"/>
  10. <Button
  11. android:id="@+id/button"
  12. android:layout_width="wrap_content"
  13. android:layout_height="wrap_content"
  14. android:text="start"/>
  15. </LinearLayout>

bundle.java

[java]
  1. package Android2.test;
  2. import android.app.Activity;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.widget.TextView;
  6. public class bundle extends Activity{
  7. private TextView text = null;
  8. @Override
  9. public void onCreate(Bundle savedInstanceState)
  10. {
  11. super.onCreate(savedInstanceState);
  12. setContentView(R.layout.bundle);
  13. Intent intent = getIntent();
  14. Bundle bundle = intent.getExtras();
  15. text = (TextView)findViewById(R.id.text);
  16. text.setText(bundle.getString("Name"));
  17. }
  18. }

bundle.xml

[java]
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="fill_parent"
  5. android:orientation="vertical" >
  6. <TextView
  7. android:id="@+id/text"
  8. android:layout_width="wrap_content"
  9. android:layout_height="wrap_content"
  10. />
  11. </LinearLayout>

Copyright © Linux教程網 All Rights Reserved