Activity之间的数据传输
来源:互联网 发布:淘宝ltvvy模特是谁 编辑:程序博客网 时间:2024/06/09 17:39
如图所示:
定义一个数据类:
public class MyData implements Serializable{public String content;public String getContent() {return content;}public void setContent(String content) {this.content = content;}}
A_Activity的布局代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFFFFF" android:orientation="vertical" > <TextView android:id="@+id/tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:textColor="#FFFFFF" android:background="#0000FF" android:text="用于显示B返回的数据" /> <EditText android:id="@+id/edit" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:textColor="#000000" android:hint="输入传给B的数据" /> <Button android:id="@+id/bt" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:background="#FF00FF" android:textColor="#FFFFFF" android:text="启动B" /> </LinearLayout>
A_Activity的Java代码如下:
public class A_Activity extends Activity {public static String key = "A_Activity.key";public TextView tv;public EditText edit;public Button bt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.a_activity_layout); findView(); setListener(); }private void findView() {// TODO Auto-generated method stubtv = (TextView) findViewById(R.id.tv);edit = (EditText) findViewById(R.id.edit);bt = (Button) findViewById(R.id.bt);} private void setListener() {// TODO Auto-generated method stub//用于实现启动B并传输数据给Bbt.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View view) {// TODO Auto-generated method stubMyData data = new MyData();data.setContent(edit.getText().toString());Intent intent = new Intent(A_Activity.this,B_Activity.class);intent.putExtra(key, data);startActivityForResult(intent, B_Activity.requestCode);}});}//用于接收B传来的数据@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent intent) {// TODO Auto-generated method stubif(resultCode != Activity.RESULT_OK)return ;if(requestCode == B_Activity.requestCode){//解析B传来的数据MyData data = (MyData) intent.getSerializableExtra(key);tv.setText(data.getContent());}}}
B_Activity 中的布局代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFFFFF" android:orientation="vertical" > <TextView android:id="@+id/tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:textColor="#FFFFFF" android:background="#0000FF" android:text="用于显示A返回的数据" /> <EditText android:id="@+id/edit" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:textColor="#000000" android:hint="输入传给A的数据" /> <Button android:id="@+id/bt" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:background="#FF00FF" android:textColor="#FFFFFF" android:text="关闭B" /> <Button android:id="@+id/send" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:textSize="20sp" android:background="#FF00FF" android:textColor="#FFFFFF" android:text="发送数据给A" /> </LinearLayout>
B_Activity的Java代码如下:
public class B_Activity extends Activity{public static int requestCode = 0;public TextView tv;public EditText edit;public Button bt;public Button send;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState); setContentView(R.layout.b_activity_layout); findView(); setData(); setListener();}private void findView() {// TODO Auto-generated method stubtv = (TextView) findViewById(R.id.tv);edit = (EditText) findViewById(R.id.edit);bt = (Button) findViewById(R.id.bt);send = (Button) findViewById(R.id.send);}private void setData() {// TODO Auto-generated method stub//解析A传输过来的数据MyData data = (MyData) getIntent().getSerializableExtra(A_Activity.key);tv.setText(data.getContent());}private void setListener() {// TODO Auto-generated method stubbt.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View view) {// TODO Auto-generated method stubfinish();}});//将数据传输给Asend.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View view) {// TODO Auto-generated method stubMyData data = new MyData();data.setContent(edit.getText().toString());Intent intent = new Intent();intent.putExtra(A_Activity.key, data);setResult(Activity.RESULT_OK, intent);Toast.makeText(B_Activity.this, "发送成功", Toast.LENGTH_SHORT).show();}});}}
在编辑框中输入 信息: ”B你好,我是A,收到请回答“ 然后启动B
在B中 收到并显示 A传过来的信息 并且输入 ”A我是B,我收到了“ 点击发送数据给A 然后关闭B
A中显示了B回复的内容
1 0
- activity之间的数据传输
- Activity之间的数据传输
- android学习:两个Activity之间的数据传输
- Android1--Activity之间数据传输
- Activity之间数据传输
- android Activity和Fragment之间的数据传输的实现
- Activity之间的数据传输的4种方法
- UDP之间 的数据传输
- 通道之间的数据传输
- Intent之间的数据传输
- Activity之间的数据传输的示例(实现根据身高计算标准体重)
- Activity的启动、关闭、数据传输
- Android开发——不同Activity之间的切换和数据传输
- android-活动之间的数据传输
- Activity数据传输--Intent显示、隐式、不同应用之间启动
- Android中activity到fragment的数据传输
- FLEX TitleWindow之间数据传输的示例
- flex TitleWindow之间数据传输的示例
- iOS备忘录之MAC电脑快捷键
- 非虫——JNI实例
- Python学习之路七---进阶知识
- SpringJDBC--NamedParameterJdbcTemplate
- 关于spark提交作业报错原因
- Activity之间的数据传输
- Android自定义View(五)——带扫描线的View
- PHP的优劣势,欢迎指正和补充
- android service完全解析(下)
- 欢迎使用CSDN-markdown编辑器
- OC 基础第七讲 : NSDate,类的扩展与延展(Extension)
- ArcGIS 实现框选区域查询要素后,要素点击弹出框
- 使用csc生成DLL文件
- 支付宝接口的链接地址