在Activity之间传递数据
2017-06-16 23:34
92 查看
<1>传递基本数据类型
基本数据类型:
整:byte short int long
浮点:float double
布尔:boolean
字符:char
引用:String
代码及运行结果
---------------------activity_main_xml
------------------------------------MainActivity.java
效果:
基本数据类型:
整:byte short int long
浮点:float double
布尔:boolean
字符:char
引用:String
代码及运行结果
---------------------activity_main_xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.g160628_11_widget.MainActivity"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入用户名" android:id="@+id/et_main_uname"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="写心情" android:onClick="xinq"/> <!--文本框--> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_main_showThink"/> </LinearLayout>
------------------------------------MainActivity.java
package com.example.g160628_11_widget; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private EditText et_main_uname; private TextView tv_main_showThink; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_main_uname = (EditText) findViewById(R.id.et_main_uname); tv_main_showThink = (TextView) findViewById(R.id.tv_main_showThink); /* String content=getIntent().getStringExtra("content"); tv_main_showThink.setText(content);*/ } public void xinq(View view){ //点按钮拿到用户名 String uname=et_main_uname.getText().toString(); //邮递员 Intent intent=new Intent(this,ThinkActivity.class); intent.putExtra("uname",uname); //很普通的跳 //startActivity(intent); //有目的的跳 startActivityForResult(intent,0x201); } //专门有一个方法来拿结果数据 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); String content=data.getStringExtra("content"); tv_main_showThink.setText(content); } }
---------activity_think.xml
<?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:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="50dp" android:id="@+id/tv_think_showName" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="上面是文本框,接收用户名的"/> <EditText android:layout_width="368dp" android:layout_height="wrap_content" android:lines="5" android:hint="请输入心情" android:gravity="top" android:id="@+id/et_think_content" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="确定" android:onClick="ok"/> </LinearLayout>
------------------ThinkActivity.java
package com.example.g160628_11_widget; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; public class ThinkActivity extends AppCompatActivity { private TextView tv_think_showName; private EditText et_think_content; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_think); tv_think_showName = (TextView) findViewById(R.id.tv_think_showName); et_think_content = (EditText) findViewById(R.id.et_think_content); //获取第一个页面传递过来的数据(获取邮递员的值) String uname=getIntent().getStringExtra("uname"); tv_think_showName.setText("你好:"+uname); } public void ok(View view){ //拿心情的内容 String content=et_think_content.getText().toString(); Intent intent=new Intent(this,MainActivity.class); intent.putExtra("content",content); //设置结果 setResult(0x100,intent); //干掉自己 finish(); //startActivity(intent); } }
效果:
相关文章推荐
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- 在Android中,通过extras在activity之间传递数据
- android 应用程序Activity之间数据传递与共享的几种途径(2)
- Activity, Service之间的数据传递通过BroadCastReceive的操作实例代码
- Android 在两个 Activity 之间传递数据
- Android 2个activity 之间的数据传递
- Bundle在不同的Activity之间传递数据!
- Activity之间的数据传递
- [Android] 003_多个Activity之间的调用和数据传递
- [读书摘记]不同Activity之间的数据传递--Bundle对像的实现
- android 应用程序Activity之间数据传递与共享的几种途径
- Android如何在Activity和Service之间传递数据
- Bundle对象实现不同Activity之间数据传递
- Android中2个activity之间的数据传递方法
- 不同Activity之间的数据传递
- activity之间的跳转及传递数据
- android学习笔记之七在Activity之间传递数据
- 不同Activity之间的数据传递
- android 不同activity之间传递数据
- Ex3.10 不同Activity之间的数据传递——Bundle对象的实现