简体   繁体   English

我正在尝试使用另一个活动中的 EditText 的值更改 TextView 的文本

[英]I'm trying to change the text of a TextView with the value of one that is EditText in another activity

I'm trying to change the text of a TextView with the value of an EditText that is in another activity but it says the value is null but I need to go through MainActivity5 to be able to access MainActivity6我正在尝试使用另一个活动中的 EditText 的值更改 TextView 的文本,但它说该值为 null 但我需要通过 MainActivity5 才能访问 MainActivity6

Error:错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.test1/com.example.test1.MainActivity5}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.os.Bundle.getString(java.lang.String)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3449) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7656) at java.lang.reflect.Method.invoke(Native Method) at com.an java.lang.RuntimeException:无法启动活动 ComponentInfo{com.example.test1/com.example.test1.MainActivity5}:java.lang.NullPointerException:尝试调用虚拟方法'java.lang.String android.os.Bundle。 getString(java.lang.String)' 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3449) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601) 在 android.app.servertransaction 的空对象引用.LaunchActivityItem.execute(LaunchActivityItem.java:85) 在 android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 在 android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 在 android.app。 ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main (ActivityThread.java:7656) 在 com.an 的 java.lang.reflect.Method.invoke(Native Method) droid.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.os.Bundle.getString(java.lang.String)' on a null object reference at com.example.test1.MainActivity5.onCreate(MainActivity5.java:29) at android.app.Activity.performCreate(Activity.java:8000) at android.app.Activity.performCreate(Activity.java:7984) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3422) droid.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 原因:java.lang.NullPointerException:尝试调用虚拟android.app.Activity 的 com.example.test1.MainActivity5.onCreate(MainActivity5.java:29) 的空对象引用上的方法“java.lang.String android.os.Bundle.getString(java.lang.String)” .performCreate(Activity.java:8000) 在 android.app.Activity.performCreate(Activity.java:7984) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.爪哇:3422)

MainActivity5 (Change TextView) MainActivity5(更改文本视图)

package com.example.test1;

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.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity5 extends AppCompatActivity {
    String st = "0";



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

        Button button6 = (Button) findViewById(R.id.button6);
        Button button7 = (Button) findViewById(R.id.button7);
        TextView tv_saldo2 = (TextView) findViewById(R.id.tv_saldo2);
        st= tv_saldo2.getText().toString() + st;

        if (getIntent().getExtras().getString("Value").equals(null)){
            Intent intent = new Intent(MainActivity5.this, MainActivity6.class);
            startActivity(intent);
            Toast.makeText(MainActivity5.this, "Precisa de addicionar dinheiro para o poder gerir", Toast.LENGTH_SHORT).show();
        }else{
            st=getIntent().getExtras().getString("Value");
            st= tv_saldo2.getText().toString() + st;
        }
        tv_saldo2.setText(st);






        button6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity5.this, MainActivity6.class);
                startActivity(intent);
            }
        });


        button7.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity5.this, MainActivity7.class);
                startActivity(intent);
            }
        });
    }
}

MainActivity6 (EditText) MainActivity6(编辑文本)

package com.example.test1;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity6 extends AppCompatActivity {


    String st;

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


        Button button8 = (Button) findViewById(R.id.button8);
        Button button9 = (Button) findViewById(R.id.button9);
        EditText et_montante1 =(EditText) findViewById(R.id.et_montante1);
        EditText et_obs1 = (EditText) findViewById(R.id.et_obs1);




        button8.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if (TextUtils.isEmpty(et_montante1.getText().toString())) {
                    Toast.makeText(MainActivity6.this, "Campos vazios não são permitidos!", Toast.LENGTH_SHORT).show();
                }else{
                    if (TextUtils.isEmpty(et_obs1.getText().toString())) {
                        Toast.makeText(MainActivity6.this, "Campos vazios não são permitidos!", Toast.LENGTH_SHORT).show();
                    }else{
                        Intent intent=new Intent(MainActivity6.this, MainActivity5.class);
                        st=et_montante1.getText().toString();
                        intent.putExtra("Value",st);
                        Toast.makeText(MainActivity6.this, "Campos vazios não são permitidos!"+ st, Toast.LENGTH_SHORT).show();
                        startActivity(intent);
                        finish();
                    }
                }


            }
        });


        button9.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Intent intent = new Intent(MainActivity6.this, MainActivity5.class);
                startActivity(intent);


            }
        });
    }
}

tv_saldo2.setText(st); tv_saldo2.setText(st); replace it with tv_saldo2.setText(st+" ");将其替换为 tv_saldo2.setText(st+" "); it will help your application to not to crash它将帮助您的应用程序不崩溃

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在一个活动上使用EditText更改另一个活动上的按钮文本 - Using EditText on one activity to change a buttons text on another activity 使用 Edittext 更改 Textview 的文本? - Change the Text of a Textview with Edittext? 我没有在另一个类中获得EditText值 - I'm not getting EditText Value in another class 如何通过另一个活动更改一个活动的 TextView 字体大小? - How to change TextView fontSize of one activity through another activity? 如何从一个活动传递int变量值以覆盖另一个活动中的textview - How can I pass an int variable value from one activity to overwrite a textview in another activity 如何将两个不同的文本意图从一个活动发送到另一个活动到同一个 textview? - How can I send two different text intents to the same textview from one activity to another? 如何通过在另一个活动中单击按钮来更改TextView的颜色? - How to change the color of a TextView in one activity by clicking a button in another? 如何将 EditText 值从一个活动到另一个活动作为 int 获取到 go - How to get an EditText value to go from one activity to another as an int 如何使用SharedPreferences保存在edittext中输入的文本,并将其显示在另一个Activity中的TextView中 - How to use SharedPreferences to save the text entered in edittext and display it in TextView in another Activity 如何通过从userinput(edittext)获取文本并将其放入另一个活动的textview中? - How to pass get text from userinput (edittext) and put into a textview in another activity?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM