1

これには簡単な解決策があると確信していますが、苦労しています。setDatePicker メソッドを使用して DateDialog の日付を変更しようとしていますが、範囲外のインデックス エラーが発生し続けます

solo.clickOnButton(0);
solo.setDatePicker(0, year, month, day);
solo.clickOnButton("Set");

日付ピッカーは onCreateDialog メソッドで作成されます

    @Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
    case START_DATE_ID:
        return new DatePickerDialog(this, bDateSetListener, bYear, bMonth,
                bDay);
    case END_DATE_ID:
        return new DatePickerDialog(this, eDateSetListener, eYear, eMonth,
                eDay);
    }
    return null;
}

「無効なインデックス 0、サイズ 0」というエラーが表示され続けます。DatePickerDialog を保存して値を設定/取得する方法がわかりません。新しいものを作成し続ける必要があるようです。誰かがこれを機能させていると確信しています。助けてくれてありがとう。

4

2 に答える 2

0

robotium をもう少し使ってみたところ、表示されるエラーはあまり役に立たないことがわかりました (この場合は本当の問題です)。私が実際に得ていたエラーは、DatePicker の設定とは何の関係もありませんでした。私のテスト コードでは、テスト ケースの開始アクティビティではなく、テスト外で動作するアクティビティで終了しました。これに気づいた後、私は単純に最初のアクティビティと過去のテストに戻りました.... この話の教訓は、Robotium のエラーはあまり明確ではなく、アプリケーションまたはフローで間違っている可能性がある他のものを探す必要があるということです。奇妙なエラーを軽減します。

于 2012-08-14T13:23:36.657 に答える