0

在我的 android 应用程序中,我有一个播放按钮。但是在我点击按钮后,什么也没发生。似乎在比较按钮上的文本时,它们并不相等。如果我使用 indexOf(PLAY),它可以工作。无法弄清楚为什么它会这样。我在 res/values/strings.xml 中将我的字符串值定义为

    <string name="play">Play</string>

    private final static String PLAY = "Play";        

    //some code in between    

    Button playButton = new Button(this);
    playButton.setText(R.string.play);
    playButton.setTextSize(BUTTON_FONT_SIZE);
    playButton.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
           Button b = (Button) v;
           if (b.getText().equals(PLAY)) {    //stuck here.                                    
                 startPlay();
            } else {

                stopPlay();
            }
        }
    });

谢谢您的帮助。

4

1 回答 1

0

您可以使用中间变量,如下所示

String buttonText = b.getText().toString(); 
if (buttonText.equals(PLAY)) { 
    .....

要不就

if (b.getText().toString().equals(PLAY)) { 
于 2013-09-10T02:19:39.487 回答