0

今、私はこの問題を抱えています:

  1. 私の Asynctask では、この Listview に ProgressDialog があり、常に更新され、自動的にスクロールされます (mListview.setSelection(mData.size()-1); のようなものを使用してスクロールします)。

  2. 終了またはキャンセルされていないときにフルスクリーンにしたいのですが、これは Window dialogWindow = mProgressDialog.getWindow(); でかなり簡単だと思います。dialogWindow.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

  3. また、終了時にフルスクリーンを停止したい(つまり、ステータスバーを表示したい)。そして、リストビューの最初のアイテムも表示したいです。

  4. -------------------- 問題が発生するのはこのときです。

dialogWindow.setFlags(0, WindowManager.LayoutParams.FLAG_FULLSCREEN); のように使用します。

そしてそれはうまくいっています。ステータスバーが表示されます。

次に、mListview.setSelection(0) を使用します。これにより、最初のアイテムを取得できると思います。

しかし、それはまったく効果がありません。これがどのように発生するか、または解決する方法はありますか?どんな助けでも大歓迎です。ありがとうございました!

4

2 に答える 2

1

あなたはこの方法を試すことができます、それはあなたに役立つかもしれません。

http://developer.android.com/reference/android/widget/ListView.html#smoothScrollToPosition(int)



public void smoothScrollToPosition (int position)

Since: API Level 8
Smoothly scroll to the specified adapter position. The view will scroll such that the         indicated position is displayed.

Parameters
position    Scroll to this adapter position.
于 2012-07-14T06:44:25.020 に答える
0

使用する必要があります

mListview.clearFocus();

電話する前に

mListview.requestFocusFromTouch();
mListview.setSelection(0);

mListView の post メソッドで。

于 2014-12-10T11:03:36.510 に答える