Android Studio学习:中级控件:使用Intent进行页面之间数据传输
16lz
2021-01-23
MainActivity(上个页面)
package com.example.day_06;import androidx.annotation.Nullable;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import static java.lang.String.valueOf;public class MainActivity extends AppCompatActivity { EditText editText; Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText=findViewById(R.id.editTextTextPersonName); button=findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent =new Intent(MainActivity.this,response.class);//创建intent Bundle bundle= new Bundle(); bundle.putString("输入",String.valueOf(editText.getText()));//以键值对形式存入bundle intent.putExtras(bundle);//绑定bundle startActivityForResult(intent,0); } }); } @Override//c重写onActivityResult,下个页面放回的时候触发 protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode==0&&data != null) { editText.setText(String.valueOf(data.getExtras().get("请输入"))); } }}
MainActivity_XML
<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="173dp" android:text="@string/button" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> <EditText android:id="@+id/editTextTextPersonName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="297dp" android:ems="10" android:hint="@string/edittext" android:importantForAutofill="no" android:inputType="textPersonName" android:labelFor="@id/button" android:text="@string/name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /></androidx.constraintlayout.widget.ConstraintLayout>
response
package com.example.day_06;import androidx.appcompat.app.AppCompatActivity;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class response extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.response); final Intent intent = getIntent(); Bundle bundle =intent.getExtras(); TextView textView = findViewById(R.id.textView2); textView.setText(String.valueOf(bundle.get("输入"))); Button button =findViewById(R.id.button2); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent1=new Intent(); Bundle bundle1=new Bundle(); bundle1.putString("请输入","已经收到"); intent1.putExtras(bundle1); setResult(Activity.RESULT_OK,intent1); finish(); } }); }}
response_XML
<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textview2" android:textSize="36sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="106dp" android:text="@string/button1" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/textView2" /></androidx.constraintlayout.widget.ConstraintLayout>
更多相关文章
- android页面切换动画
- Android 左右滑动切换页面或Activity的效果实现
- webViewJavascriptBridge踩坑【页面刚开始bridge失效一阵】
- Android:打开程序的全屏页面
- android 通过schema唤起应用指定页面
- Android重写OnTouchListener实现双击事件的监听
- 高德天气应用开发之四:android ViewPager实现左右页面滑动切换
- 通过ua检测浏览页面的设备是phone还是tablet