首页 > 解决方案 > 如何将 Edittext 中的文本转换为 Toast?

问题描述

我的任务是在我按下按钮时将 EditText 中的输入文本放入 toast 中,如果没有文本,则什么也不做,但每当我尝试打开它时应用程序就会崩溃。这是我的代码:

package com.example.myapplication;

import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    EditText name=(EditText)findViewById(R.id.EditText1);

    public void cLickFuntion(View view){
        String nameString=name.getText().toString();
        Toast.makeText(getApplicationContext(),nameString,Toast.LENGTH_SHORT).show();
    }
}

标签: javaandroidtoast

解决方案


将 EditText 声明为全局并更改 onCreate 如下所示

public class MainActivity extends AppCompatActivity {

    EditText name;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        name=(EditText)findViewById(R.id.EditText1);

    }

    public void cLickFuntion(View view){
        String nameString=name.getText().toString();
        Toast.makeText(getApplicationContext(),nameString,Toast.LENGTH_SHORT).show();
    }
}

推荐阅读