我使用以下代码来获取微调器中的选定值:
cbFormato.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View v, int posicao, long id) {
//pega nome pela posição
formatoSelecionado = parent.getItemAtPosition(posicao).toString();
}
public void onNothingSelected(AdapterView<?> parent) {
}
});
当我使用下面的代码显示他所采用的值时,微调器返回值:Circular 返回spinner值的代码:
Toast.makeText(AppTubulao.this, "Circular: " + formatoSelecionado, Toast.LENGTH_LONG).show();
问题是,当我在下面相同的代码中测试微调器的值时,它无法识别该值,即他在Toast中显示的圆形值与“圆形”不同,如果这是测试< / p>
if (formatoSelecionado == "Circular")
{
Toast.makeText(AppTubulao.this, "Circular: " + formatoSelecionado, Toast.LENGTH_LONG).show();
}
他没有输入if语句
答案 0 :(得分:1)
假设他们确实将 设置为相同的值,则以下内容应评估为true。
if (formatoSelecionado.equals("Circular")) {
答案 1 :(得分:1)
Java中的字符串相等性应使用equals或equalsIgnoreCase方法。因此,要测试formatoSelectionado
等于字符串“Circular”,您需要使用:
if (formatoSelecionado.equals("Circular")) ...
或
if (formatoSelecionado.equalsIgnoreCase("Circular"))