2012-04-27 6 views
10

私はRobotiumを初めて使用しています。ダイアログビルダーを使用して警告ダイアログボックスを作成し、showコマンドを使用してそのダイアログボックスを呼び出しました。 Robotiumを使用してデフォルトで「ok」ボタンをトリガーすることができました。私は「キャンセル」ボタンで同じことをすることができません。ダイアログボックスはIDと関連付けられていないので、ボタンのIDを取得する方法はわかりません。ここでは、ダイアログボックス警告ダイアログのRobotiumをクリックするボタンを選択する方法は?

alertDialogBuilder 
.setMessage("Please enter only numbers without any spaces") 
.setCancelable(true) 
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
public void onClick(DialogInterface dialog, int id) { 
dialog.cancel(); 
} 
}) 
.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
public void onClick(DialogInterface dialog, int id) { 
dialog.cancel(); 
} 
}); 

のための私のコードは、私がテストクラスで「OK」ボタンをトリガするために使用されるコードは、「キャンセル」ボタンのために同じことを行うにはどのように

solo.getCurrentActivity().runOnUiThread(new Runnable() { 
public void run() { 
solo.getCurrentActivity().getCurrentFocus().requestFocus(); 
} 
}); 
this.sendKeys(KeyEvent.KEYCODE_DPAD_CENTER); 

のですか?前もって感謝します。

答えて

9

solo.clickOnButton( "キャンセル")を使用してください。

+0

ya。それを修正した。ありがとうRenas –

22

は実は、私はあなたが「正」ボタンをandroid.R.id.button1あるsolo.clickOnView(solo.getView(buttonId))を行う示唆、「負」ボタンがandroid.R.id.button2で、「ニュートラル」はandroid.R.id.button3です。

+3

これは、受け入れられた答えよりもずっと信頼できることが証明されています。ありがとう。 – Eoin

+2

カスタムダイアログがあればどうしますか? – DJhon

関連する問題