java - 从 EditText 字段获取输入并保存在变量中

标签 java android

这是我的第一篇文章,

我最近开始涉足 android studio 只是为了好玩。我正在尝试制作一个用于记录分数的应用程序。我已经设置了所有基础知识,我有一个 EditText但我希望文本“Danny 是获胜者”(或获胜者 EditText 框中的任何名称)在最后显示为 toast 。我这样做是为了目前说“玩家 1/2 是胜利者”。我知道我只需要用变量名称(例如玩家一)替换player1/2部分。

我用过

// player 1 name

EditText playerOne = (EditText) findViewById(R.id.player1);
String player1 = playerOne.getText().toString();

//player 2 name

EditText playerTwo = findViewById(R.id.player2);
String player2 = playerTwo.getText().toString();

EditText 获取信息查看然后将其转换为变量player1和player2中的字符串

然后,我在赢得游戏后将文本更改为“player1 +”是获胜者”,但是当我运行该应用程序时,它在打开之前崩溃了。如果我删除上面的 4 行,它就可以正常工作......

如有任何帮助,我们将不胜感激。

谢谢

最佳答案

我的猜测是您遇到了 nullPointerException。我认为是这样,因为您可能会要求变量player1和player2在playerOne和playerTwo具有任何值之前获取它们的值。基本上,您需要做的是仅当其中有内容时才从playerOne 和playerTwo 获取字符串。通常我们放置一个按钮,然后单击该按钮,我们会执行 String player2 = playerTwo.getText().toString();String player1 = playerOne.getText().toString() ; 行。或者等待事件发生,然后根据事件从 EditText 获取字符串。我宁愿你采取这样的方法。试试这个,我很确定这会起作用:

EditText playerOne = (EditText) findViewById(R.id.player1);
EditText playerTwo = findViewById(R.id.player2);
Button button = findViewById(R.id.button); //Make sure you define this is your xml file with the id button

button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String player1 = playerOne.getText().toString();
            String player2 = playerTwo.getText().toString();
            //Set your toast here
        }
    });

现在请确保您在 xml 文件中定义了按钮,其 ID 为 button,并且只有在 EditTexts 中输入内容后才单击该按钮。有多种方法可以完成同一件事,因此我建议您在这种情况下进行更多研究。

关于java - 从 EditText 字段获取输入并保存在变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52038548/

相关文章:

java - 如何使 TextView 中的每一行都可选

java - 如何在加载 HTML 页面时使用 JFrames 打开 Applet

java - 我们可以用Java解析terraform "variables.tf"文件吗?如果是这样如何实现相同的

java - 如何在带有 Java 的 Android 中将 ConstraintSet 用于动画?

javascript - Nativescript定时器模块与JS setInterval的区别

java - 是否可以使用 Espresso 的 IdlingResource 等待某个 View 出现?

java - 通过java processBuilder运行cmd命令

java - 如何从我的应用程序中启用网络和 GPS 位置?

java - 如何?使用 Retrofit2 将当前日期从 Android 插入到 mySQL 数据库中

android - 保存全尺寸图像 android studio