3

Androidはレイアウトのサイズが異なるため、に表示できる行数はListView可変であり、理想的には、のようなAPI呼び出しを実行する必要があります。

http://www.example.com/get_product?count=N&..

ここで、=オフスクリーンスクロール効果のために、指定された+10アイテムのバッファにN表示できる行数 。ListView

Nアプリでの値を定義するための最良の方法は何でしょうか?

4

4 に答える 4

1

これを試して:

ListView list = (ListView) findViewById(R.id.list) //R.id.list will be your listview id in the layout    
int n = Double.intValue(list.getHeight()/list.getChildAt(1).getHeight())

子を取得するために最初にリストを作成する必要があり、listItemのdpの高さが(カスタムレイアウトを使用している場合)あるために機能しない場合は、次を使用できます。

ListView list = (ListView) findViewById(R.id.list) //R.id.list will be your listview id in the layout    
Resources r = getResources();
int px = Math.round(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, !!!YOUR LISTITEM HEIGHT IN DP!!!, r.getDisplayMetrics())); //Convert DP to actual size in pixels (rounded)
int n = Double.intValue(list.getHeight()/px)
于 2012-09-16T18:29:45.943 に答える
0

BaseAdapterやArrayAdapterなどのカスタムアダプタを使用している場合はgetCount()、ListViewで拡張するビューの番号が表示されます。

それはあなたに行数を与えるでしょう

getCount()メソッドのに呼び出されます。causeは、インフレートするビューの数のみを示します。getView()getCount()

于 2012-09-16T18:48:37.830 に答える
0

メソッドlistView.setOnScrollListener(OnScrollListener)を使用して、onScrollListenerをlistviewに設定します。メソッドonScroll(AbsListView view、int firstVisibleItem、int visibleItemCount、int totalItemCount)の@param visibleItemCountは、探しているものです。

于 2012-09-16T18:42:56.823 に答える
0

呼び出しgetListView().getChildCount()て、表示されているアイテムの数を取得できます。ただし、これはListViewが表示された後にのみ呼び出すことができます。ですから、アイテムの数を取得しようとしたときに、最初の試行でこれを取得できるかどうかはわかりません。

于 2012-09-16T19:37:26.350 に答える