0
在我的Android應用程序中,我有一個播放按鈕。手動點擊按鈕後,一切正常。但是當我使用uiautomator觸發按鈕點擊時,沒有任何事情發生。調試完成後,我非常肯定這是導致失敗的字符串比較步驟(標記爲「卡在這裏」)。非常困惑爲什麼它的行爲不同。我確實看到按鈕被雙擊(按鈕顏色改變)。如果我使用button.getText()。toString(),兩者都有效。順便說一句,button.getText()返回CharSequence,而不是String對象。腳本按鈕單擊行爲不像用戶單擊
我在res /價值/ strings.xml中定義我的字符串值
<string name="play">Play</string>
Java代碼:
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();
}
}
});
我使用腳本來驅動UIAutomator中的命令。一切都是自動的。問題是手動點擊沒有問題。他們使用相同的代碼,但行爲不同。 – ericyoung