私はアンドロイドが初めてです。Android ライブラリでのアクティビティで、[完了] ボタンをクリックするとソフト キーボードが非表示になります。「onKeyUp」でこれを行っています。JUnit テスト ケースを作成して、キーボードが非表示になっているかどうかをテストしたいと考えています。ResultReceiver オブジェクトを hidesoftInputFromWindow に渡し、onResultReceiver で結果コードを比較することで、これを行う予定です。
@オーバーライド
public boolean onKeyUp(int keyCode, KeyEvent event) {
InputMethodManager imm =(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
ResultReceiver result = new ResultReceiver(new Handler()){
@Override
public void onReceiveResult(int r, Bundle data) {
//Keyboard hidden
}
};
try {
imm.hideSoftInputFromWindow(teamText.getWindowToken(), 0, result);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
問題は、アクティビティがアプリケーションから開始されたときに、「onReceiveResult」がコールバックを取得していることです。しかし、JUnit ActivityInstrumentationTestCase2 サブクラスからアクティビティを開始すると、onReceiveResult がコールバックを取得しません。
誰かが私を助けてくれますか、または私をある方向に向けることができますか?