android界面回传值

来源:互联网 发布:纯四个数字域名价格 编辑:程序博客网 时间:2024/05/21 15:59

android界面回传值

android界面进行回传时,首先需要使用startActivityForResult(intent,1000);进行页面的跳转,跳转的时候,1000代表请求的代码。之后在子页面中需要调用setResult(1001,intent);来进行设置回传值,通知使用finish()结束当前页面。回到开始页面,在开始的页面上重写onActivityResult方法,在方法中判断请求码为1000,结果码是1001的,取得回传的值,显示在界面上。

下面是代码:
MainActivity.java
package xueyou.xueyoucto.com.androidviews;import android.content.Intent;import android.graphics.Color;import android.os.Handler;import android.os.Message;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Gravity;import android.view.View;import android.widget.Button;import xueyou.xueyoucto.com.androidviews.FullscreenActivity;import android.widget.EditText;import android.widget.GridLayout;import android.widget.TextView;import java.util.Timer;import java.util.TimerTask;public class MainActivity extends AppCompatActivity {    private Button button;    private EditText editText1;    private EditText editText2;    private EditText editText3;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        button = (Button)this.findViewById(R.id.button);        editText1 = (EditText)this.findViewById(R.id.editText);        editText2 = (EditText)this.findViewById(R.id.editText2);        editText3 = (EditText)this.findViewById(R.id.editText3);        button.setOnClickListener(new View.OnClickListener(){            @Override            public void onClick(View v){                Intent intent = new Intent(MainActivity.this,SubActivity.class);                String a = editText1.getText().toString().trim();                String b = editText2.getText().toString().trim();                intent.putExtra("message",a + "+" + b + "=" + "?");                startActivityForResult(intent,1000);            }        });    }    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        if(requestCode == 1000 && resultCode == 1001){            String resultString = data.getStringExtra("result");            editText3.setText(resultString);        }    }}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="xueyou.xueyoucto.com.androidviews.MainActivity">        <EditText            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:id="@+id/editText"            android:layout_alignParentTop="true"            android:layout_alignParentLeft="true"            android:layout_alignParentStart="true"            android:width="70dp" />        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="  +  "            android:id="@+id/textView"            android:layout_alignParentTop="true"            android:layout_toRightOf="@+id/editText"            android:layout_toEndOf="@+id/editText"            android:width="50dp"            android:layout_gravity="center"            android:textSize="30sp"/>        <EditText            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:id="@+id/editText2"            android:width="70dp"            android:layout_alignTop="@+id/textView"            android:layout_toRightOf="@+id/textView"            android:layout_toEndOf="@+id/textView" />        <TextView            android:layout_width="wrap_content"            android:layout_height="match_parent"            android:text="  =  "            android:id="@+id/textView2"            android:width="50dp"            android:layout_alignTop="@+id/editText2"            android:layout_toRightOf="@+id/editText2"            android:layout_toEndOf="@+id/editText2"            android:textSize="30sp"/>        <EditText            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:id="@+id/editText3"            android:layout_alignBottom="@+id/editText2"            android:layout_toRightOf="@+id/textView2"            android:layout_toEndOf="@+id/textView2"            android:width="70dp" />        <Button            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="提交"            android:id="@+id/button"            android:layout_below="@+id/editText2"            android:layout_alignLeft="@+id/editText2"            android:layout_alignStart="@+id/editText2"            android:layout_marginTop="81dp" /></RelativeLayout>

SubActivity.java

package xueyou.xueyoucto.com.androidviews;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class SubActivity extends AppCompatActivity {    private TextView textView;    private Button button;    private EditText editText;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_sub);        textView = (TextView)this.findViewById(R.id.textView3);        Intent intent = getIntent();        String messageString = intent.getStringExtra("message");        textView.setText(messageString);        button = (Button) this.findViewById(R.id.button2);        editText = (EditText)this.findViewById(R.id.editText4);        button.setOnClickListener(new View.OnClickListener(){            @Override            public void onClick(View v) {                String value = editText.getText().toString().trim();                Intent intent1 = new Intent();                intent1.putExtra("result",value);                setResult(1001,intent1);                finish();//结束activity生命            }        });    }}

activity_sub.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="xueyou.xueyoucto.com.androidviews.MainActivity">        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="结果:"            android:id="@+id/textView3"            android:layout_alignParentTop="true"            android:layout_alignParentLeft="true"            android:layout_alignParentStart="true"            android:textSize="30sp"/>        <EditText            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:id="@+id/editText4"            android:layout_marginLeft="18dp"            android:layout_marginStart="18dp"            android:layout_alignParentTop="true"            android:layout_toRightOf="@+id/textView3"            android:layout_toEndOf="@+id/textView3"            android:width="80dp"/>        <Button            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="计算结果"            android:id="@+id/button2"            android:layout_alignBottom="@+id/textView3"            android:layout_toRightOf="@+id/editText4"            android:layout_toEndOf="@+id/editText4"            android:layout_marginLeft="56dp"            android:layout_marginStart="56dp" /></RelativeLayout>

效果:





0 0
原创粉丝点击