私がやりたいのは、ページにさらにデータがある場合、ユーザーがより多くのレコードがあることを認識してスクロールできるように、ページの下部に3つのドットなどの表示があるはずです。
ここページの下部には、レコードがまだあることを示すものはありません。より多くのデータがあるときに、その表示署名を追加したいと思います。
私がやりたいのは、ページにさらにデータがある場合、ユーザーがより多くのレコードがあることを認識してスクロールできるように、ページの下部に3つのドットなどの表示があるはずです。
ここページの下部には、レコードがまだあることを示すものはありません。より多くのデータがあるときに、その表示署名を追加したいと思います。
考えられる解決策は、ListViewの下にビュー(textViewまたはImageViewを含むレイアウト)を追加することです。
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
</ListView>
<LinearLayout
android:id="@+id/viewid"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0" />
重みは、両方のコンポーネントを表示するために重要です。その後、listViewのonScrollListenerを実装します。
setOnScrollListener(new OnScrollListener() {
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
//get the showed item num, and if its equal to total, you can hide the view
//get a reference to your viewid
viewid.setVisibility(View.GONE);
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
});
最後の行に到達したら、一番下のビューのsetVisibility(View.GONE)を設定します。このビューを再度表示する場合は、ユーザーが上にスクロールしたときにコードを変更します。もちろん、別のレイアウト、textView、または他のものを使用できます。
アップデート
レイアウトを少し試してみましたが、レイアウトファイルには別の解決策があり、下部のビューがlistViewに重なっているため、このtextViewの削除はスムーズです。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="5dp"
android:background="#ffffff"
android:layout_alignParentBottom="true"
android:text="..." />
</RelativeLayout>