Android:Activity(二):Bundle的作用
16lz
2021-01-25
Bundle的作用
主要在多个Activity之间交换数据
提供多个方法从Intent中来存入数据:
1.putXXX(String key,XXX data);
2.putSerializable(String key,Serializable data);
还提供多个方法从Intent中来取出数据:
1.getXXX(String XXX);
2.getSerializable(String key,Serializable data);
例子:
布局文件
<?xmlversion="1.0"encoding="utf-8"?><TableLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="请输入您的注册信息"android:textSize="20sp"/><TableRow><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="用户名:"android:textSize="16sp"/><!--定义一个EditText,用于收集用户的帐号--><EditTextandroid:id="@+id/name"android:layout_width="fill_parent"android:layout_height="wrap_content"android:hint="请填写想注册的帐号"android:selectAllOnFocus="true"/></TableRow><TableRow><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="密码:"android:textSize="16sp"/><!--用于收集用户的密码--><EditTextandroid:id="@+id/passwd"android:layout_width="fill_parent"android:layout_height="wrap_content"android:password="true"android:selectAllOnFocus="true"/></TableRow><TableRow><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="性别:"android:textSize="16sp"/><!--定义一组单选框,用于收集用户注册的性别--><RadioGroupandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:orientation="horizontal"><RadioButtonandroid:id="@+id/male"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="男"android:textSize="16sp"/><RadioButtonandroid:id="@+id/female"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="女"android:textSize="16sp"/></RadioGroup></TableRow><Buttonandroid:id="@+id/bn"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="注册"android:textSize="16sp"/></TableLayout>
BundleTest文件
importandroid.app.Activity;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.RadioButton;publicclassBundleTestextendsActivity{@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);Buttonbn=(Button)findViewById(R.id.bn);bn.setOnClickListener(newOnClickListener(){publicvoidonClick(Viewv){EditTextname=(EditText)findViewById(R.id.name);EditTextpasswd=(EditText)findViewById(R.id.passwd);RadioButtonmale=(RadioButton)findViewById(R.id.male);Stringgender=male.isChecked()?"男":"女";Personp=newPerson(name.getText().toString(),passwd.getText().toString(),gender);//创建一个Bundle对象Bundledata=newBundle();//包装数据data.putSerializable("person",p);//创建一个IntentIntentintent=newIntent(BundleTest.this,ResultActivity.class);//存入数据intent.putExtras(data);//启动intent对应的ActivitystartActivity(intent);}});}}
更多相关文章
- “罗永浩抖音首秀”销售数据的可视化大屏是怎么做出来的呢?
- Nginx系列教程(三)| 一文带你读懂Nginx的负载均衡
- 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
- android中访问 webView加载URL时的response数据
- android中各种数据类型之间转换
- Android面试题(25)-Bundle机制
- android studio错误: 常量字符串过长
- Android(安卓)Activity之间数据的传递
- Android(安卓)Camera预览过程数据流浅析