5,000 件のレコードについてはわかりませんが、ListView は、効果的なリサイクル メカニズムを使用して多数のレコードを適切に処理できることが知られています。詳細な説明については、このスレッドを参照してください。
さて、ネットワーク リソースの読み込みにVolleyを使用してください。リストへのレコードの非同期ロードでは、私たちのほとんどよりもはるかに優れた仕事をします...いずれにせよ、使用するライブラリまたは独自のコードのいずれかが、バックグラウンド スレッドからリソースのロード/ネットワークを実行する必要があります。
また、 ViewHolder パターンをコードに適用する必要があります。ViewHolder を使用することは、常にフード アイデアです。これは、非常に多数のレコードにとって非常に重要になります。ご利用ください。
このように見えるはずです
class ViewHolder {
textView text1;
Button button1;
}
class MyAdapter {
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder = null;
if (convertView==null){
LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
convertView = inflater.inflate(layoutResourceId, parent, false);
viewHolder = new ViewHolderItem();
viewHolder.text1 = (TextView) convertView.findViewById(R.id.text1);
viewHolder.button1 = (Button) convertView.findViewById(R.id.button1);
..........
convertView.setTag(viewHolder);
}
viewHolder = (ViewHolderItem) convertView.getTag();
ObjectItem objectItem = data[position];
..........
}
}
そして最後に、もっと読み込む機能
と一緒に部分的な読み込みが本当に必要な場合は、http ://www.androidhive.info/2012/03/android-listview-with-load-more-button/ をお読み
ください。