有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Perserve值在屏幕1中的文本字段中,同时使用变量和意图从屏幕2向后按

我有两个屏幕在第一个屏幕上,我有文本字段,当我按下按钮时,它会将我带到第二个屏幕,其中包含文本字段中的数据,但同时按下从屏幕2到屏幕1的后退按钮。 我希望文本字段(屏幕1)通过变量显示之前添加的数据

//第1屏code://///////////////////////////

package com.example.abids.savingdataonbackbutton;

import 安卓.content.Intent;
import 安卓.os.PersistableBundle;
import 安卓.support.v7.app.AppCompatActivity;
import 安卓.os.Bundle;
import 安卓.view.View;
import 安卓.widget.Button;
import 安卓.widget.EditText;
import 安卓.widget.TextView;

public class MainActivity extends AppCompatActivity {
    Button button;
    EditText name;



    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button=(Button)findViewById(R.id.buttonNext1);
        name=(EditText)findViewById(R.id.editTextName);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                String namevalue= name.getText().toString();

                savedInstanceState.putString("MyString", "Welcome back to Android");
                Intent intent=new Intent(MainActivity.this,Main3Activity.class);

                intent.putExtra("Name",namevalue);





                startActivity(intent);

                }
        });


        }


}



////////////////**Screen 2 code:**////////////////////////////////////////////



package com.example.abids.savingdataonbackbutton;

import 安卓.content.Intent;
import 安卓.support.v7.app.AppCompatActivity;
import 安卓.os.Bundle;
import 安卓.view.View;
import 安卓.widget.Button;
import 安卓.widget.TextView;

import org.w3c.dom.Text;

public class Main3Activity extends AppCompatActivity {
    TextView t1;
    Button b1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main3);

        b1=(Button) findViewById(R.id.button);
        t1=(TextView)findViewById(R.id.textView2);


        t1=(TextView)findViewById(R.id.textView2);

        getIntent().getStringExtra("Name");
        t1.setText("Name :" +getIntent().getStringExtra("Name"));

        b1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                Intent intent= new Intent(Main3Activity.this,MainActivity.class);
                startActivity(intent);






            }
        });





    }


}

共 (1) 个答案

  1. # 1 楼答案

    Screen 2
    package com.example.abids.savingdataonbackbutton;
    
    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    import org.w3c.dom.Text;
    
    public class Main3Activity extends AppCompatActivity {
        TextView t1;
        Button b1;
        String valueOfName;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main3);
    
            b1=(Button) findViewById(R.id.button);
            t1=(TextView)findViewById(R.id.textView2);
    
    
            t1=(TextView)findViewById(R.id.textView2);
    
            getIntent().getStringExtra("Name");
            valueOfName = getIntent().getStringExtra("Name");
            t1.setText("Name :" +getIntent().getStringExtra("Name"));
    
            b1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
    
                    screen2Done();
                }
                });
    }
    
    public void screen2Done() {
            Intent intent=new Intent();
            intent.putExtra("RESULT_STRING", valueOfName);
            setResult(RESULT_OK, intent);
            finish();
        }
    
    @Override
        public void onBackPressed() {
            screen2Done();
        }
    

    在屏幕1上,捕获onActivityResult()方法中的值,类似于屏幕2