Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何防止文本视图中显示null?_Java_Android_Android Intent_Null_Textview - Fatal编程技术网

Java 如何防止文本视图中显示null?

Java 如何防止文本视图中显示null?,java,android,android-intent,null,textview,Java,Android,Android Intent,Null,Textview,对安卓来说非常陌生,我真的被这件事难住了 因此,我让我的main活动从第二个活动CallAnActivity接收一些字符串 我打算将字符串传递回主活动,它们将显示在TextView中。但是在我输入任何信息之前,我希望这个文本视图不包含任何内容,并且看起来是空白的 但是当第一次启动main活动时,文本视图displayMessageActivity显示多个null值。由于有三个字符串被发送,它只会将null这个词重复三次 main活动的代码为: //callAnActivityButton

对安卓来说非常陌生,我真的被这件事难住了

因此,我让我的
main活动
从第二个活动
CallAnActivity
接收一些字符串

我打算将字符串传递回主活动,它们将显示在
TextView
中。但是在我输入任何信息之前,我希望这个文本视图不包含任何内容,并且看起来是空白的

但是当第一次启动
main活动
时,文本视图
displayMessageActivity
显示多个
null
值。由于有三个字符串被发送,它只会将null这个词重复三次

main活动的代码为:

    //callAnActivityButton to open second activity of app
    Button callAnActivityButton = findViewById(R.id.callActivityButton);
    callAnActivityButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick( View v ) {
            Intent intent = new Intent(MainActivity.this, CallAnActivity.class);
            startActivity(intent);
        }
    });

    Intent intent = getIntent();
    String emailAddress = intent.getStringExtra("emailAddress") + "\n";
    String emailSubject = intent.getStringExtra("emailSubject") + "\n";
    String emailBody = intent.getStringExtra("emailBody");

    //TextView to display text from second activity
    TextView displayMessageText = findViewById(R.id.displayMessageText);
    displayMessageText.setText(emailAddress + emailSubject + emailBody);
第二个活动的代码是,
CallanaActivity

    public void sendText(){

    String emailAddress = mEditTextAddress.getText().toString();
    String emailSubject = mEditTextSubject.getText().toString();
    String emailBody = mEditTextBody.getText().toString();

    Intent intent = new Intent(CallAnActivity.this, MainActivity.class);
    intent.putExtra("emailAddress", emailAddress);
    intent.putExtra("emailSubject", emailSubject);
    intent.putExtra("emailBody", emailBody);
    startActivityForResult(intent, REQUEST_CODE);
}

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

    mEditTextAddress = findViewById(R.id.emailAddressText);
    mEditTextSubject = findViewById(R.id.emailSubjectText);
    mEditTextBody = findViewById(R.id.emailBodyText);

    Button sendTextButton = findViewById(R.id.sendMailButton);
    sendTextButton.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick (View v) {
            sendText();
        }
    });
}

只需在
setText
调用中使用
if
块:-

if (intent.getStringExtra("emailAddress") != null) {
    displayMessageText.setText(emailAddress + emailSubject + emailBody);
}

更改您的内容,如下所示。你的getExtra语法是错误的

String emailAddress = intent.getExtras().getStringExtra("emailAddress") + "\n";  
String emailSubject = intent.getExtras().getStringExtra("emailSubject") + "\n";
String emailBody = intent.getExtras().getStringExtra("emailBody"); 

更改您的内容,如下所示。您的getExtra语法错误,字符串emailAddress=intent.getExtras().getStringExtra(“emailAddress”)+“\n”;字符串emailSubject=intent.getExtras().getStringExtra(“emailSubject”)+“\n”;字符串emailBody=intent.getExtras().getStringExtra(“emailBody”);