プログラムである位置にスクロールしようとするメソッドがありListViewます。このメソッドにはいくつかの条件が含まれているため、アプリが実行されている Android SDK のバージョンによって実装が若干異なります。
この機能は、私がテストした 3 台の Android デバイスで正常に動作します。junitただし、とを使用して単体テストをRoboelectric作成し、スクロールによってターゲット位置のアイテムが表示されたかどうかを確認しました。テストは失敗します。デバッグするとandroid.os.Build.VERSION.SDK_INT、実行時に 0であることがRoboelectricわかります (つまり、デスクトップとデバイスまたはエミュレーターで)。
バージョンを無視して を使用しようとしましたListView.smoothScrollToPosition()が、 を呼び出した直後でも、getFirstVisilePoition()およびメソッドは 0 を返し続けます。getLastVisiblePosition()smoothScrollToPosition(150)
を使用してリストビューのスクロールをテストできるかどうか、またはその方法を知っている人はいますRoboelectricか?
ヘルプをいただければ幸いです-トピックに関する情報が見つからないようです。
ありがとう、
アナ