android - 将文本从 string.xml 设置为 TextView 不起作用

标签 android

<分区>

所以我在后面的代码中将 TextView 文本设置为字符串,但是当我运行该应用程序时, TextView 中没有任何显示,谁能解释为什么?

代码:

public void onItemSelected(AdapterView<?> parent, View view,
    int position, long id) {
    Object poem = parent.getItemAtPosition(position);
    if(poem.toString() == "Tam O Shanter"){
         selectedPoem.setText(getString(R.string.tamO));
    }
}

最佳答案

if (poem.toString() == "Tam O Shanter"){
   selectedPoem.setText(getString(R.string.tamO));
}

这将始终返回 false,因为您比较的是引用 而不是值。您必须使用 equals() 方法。

有一条黄金法则:每次您想比较字符串时,equals() 都会成为您的 friend 。

你需要这样做:

if (poem.toString().equals("Tam O Shanter")) { // or equalsIgnoreCase()
   selectedPoem.setText(getString(R.string.tamO));
}

关于android - 将文本从 string.xml 设置为 TextView 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15442332/

相关文章:

Android 模拟器不能在 MacOS Monterey 上运行?

android - 在Android中,如何在运行时找到手机正在运行的ROM和内核?

android - 边距/填充缩小 ImageView

android firebase后台通知不适用于仅vivo设备

android - 单击 Android 中的 EditText 上下移动 View

android - 在模块 jetified-google-play-services.jar 和 jetified-play-services-base-17.0.0-runtime.jar 中发现重复的类

javascript - 在手持/智能设备上使用不同浏览器时的屏幕宽度问题

javascript - 如何更改 Android 中的警报按钮字体

android 上的 java.lang.outofmemory 错误(Web 服务)

android - 无法在空对象上调用方法 version()