次のアドレスにあるrealm recyclerview:realmrecyclerviewにはloadmore機能があり、60 realmオブジェクトを作成してクエリ領域を作成し、クエリの結果をrecyclerviewのアダプター。 recyclerviewをスクロールしてonloadmore listenerをloadmore関数で起動する別の非同期メソッドget get moreオブジェクトを作成し、領域に保存した後、recyclerviewは新しいオブジェクトを表示します。 このloadmore機能を使用して大きなデータセットのクエリをページングする必要があります。私はonloadmore関数でクエリを実行しようとしましたが、アダプタは新しいクエリ結果で再コンパイルしませんでした。しかし、私はアダプタを再作成し、recyclerviewに設定すると動作していました。ここレルムから100レコードごとにフェッチして表示した後にloadmoreを実行する方法
0
A
答えて
0
は抽象RealmBasedRecyclerViewAdapterクラスを拡張し、私のrealmrecyclerviewです: `パブリッククラスQuoteRecyclerViewAdapterはRealmBasedRecyclerViewAdapter {
public QuoteRecyclerViewAdapter(
Context context,
RealmResults<QuoteModel> realmResults,
boolean automaticUpdate,
boolean animateIdType,
String animateExtraColumnName) {
super(context, realmResults, automaticUpdate, animateIdType, animateExtraColumnName);
}
public class ViewHolder extends RealmViewHolder {
public FrameLayout container;
public TextView quoteTextView;
public TextView footerTextView;
public ViewHolder(FrameLayout container) {
super(container);
this.container = container;
this.quoteTextView = (TextView) container.findViewById(R.id.quote_text_view);
this.footerTextView = (TextView) container.findViewById(R.id.footer_text_view);
}
}
@Override
public ViewHolder onCreateRealmViewHolder(ViewGroup viewGroup, int viewType) {
View v = inflater.inflate(R.layout.item_view, viewGroup, false);
return new ViewHolder((FrameLayout) v);
}
@Override
public void onBindRealmViewHolder(ViewHolder viewHolder, int position) {
final QuoteModel quoteModel = realmResults.get(position);
viewHolder.quoteTextView.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!quoteModel.isValid()) {
return;
}
asyncRemoveQuote(quoteModel.getId());
}
}
);
viewHolder.quoteTextView.setOnLongClickListener(
new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
asyncUpdateQuote(quoteModel.getId());
return true;
}
}
);
if (type != null && type.equals("Grid")) {
viewHolder.container.setBackgroundColor(
colors.get((int) (quoteModel.getId() % colors.size())));
}
viewHolder.quoteTextView.setText(quoteModel.getQuote());
}
@Override
public void onBindFooterViewHolder(ViewHolder holder, int position) {
holder.footerTextView.setText("I'm a footer");
}
@Override
public ViewHolder onCreateFooterViewHolder(ViewGroup viewGroup) {
View v = inflater.inflate(R.layout.footer_view, viewGroup, false);
return new ViewHolder((FrameLayout) v);
}
}`
関連する問題
- 1. 最後に100件のレコードでタイトルごとにmysqlを検索
- 2. ノードスクリプトから実行したときにbashコマンドを表示する方法
- 3. Ruby on Rails:子孫レコードをフェッチして表示するには?
- 4. リフレッシュしてloadmore listviewをfacebookのように表示します
- 5. backbone.jsでフェッチした後にモデルデータを表示するには
- 6. rxJava sqliteからデータをフェッチし、リサイクラビューで表示する方法
- 7. C#MVC - 意図した改行でSQLからレコードを表示する方法
- 8. iOS:NSFetchResultsControllerがフェッチを実行しているときに回転ホイールを表示
- 9. データベーステーブルからテーブルにすべてのレコード行を表示する方法
- 10. Eclipseを実行しているときに、コードを実行した後でコンソールにエラーが表示される
- 11. イベント後に発生したレコードのみを表示する方法 - 。 Redshift/Postgresql -
- 12. 行ごとに2つのドロップダウンulを表示する方法
- 13. sqliteからフェッチされたレコードを表示できません
- 14. 実行ごとにレコードを追加します。
- 15. 四半期ごとのレコードのデータを1行に表示
- 16. データベースからフェッチした後にマングースシングルトンを必要とする
- 17. Firebaseからデータをフェッチし、Androidのマルチタブに表示する方法は?
- 18. 100回繰り返しごとに関数を実行しますが、最後のものもキャッチします
- 19. テーブルからレコードのテーブルに値をフェッチする方法
- 20. 5分ごとにcronjobを実行しますが、最初の実行後に停止しましたか?
- 21. サーバーからデータをフェッチした後に、anglejs ui-calendarをリフレッシュする方法
- 22. インフォーマティカの実行ごとに分割レコードをロードする方法は?
- 23. PHPユーザがログインした後にmysqlテーブルから行を選択して表示する方法
- 24. データベースからフェッチした後に値が表示されないJSONオブジェクト
- 25. usercontrolが完全に表示された後にメソッドを実行する方法
- 26. ウェブページにレコード(json)を保存してレコードのみに表示する方法
- 27. TableViewセルに表示されたデータをフェッチしてテキストフィールドに表示する方法は?
- 28. レコードの表示ビューを変更して行に変更する方法
- 29. struts2を使用してデータベースから見つけられたレコード数をjspページに表示する方法は?レコードの数を表示する
- 30. ベンチマーク実行時に100%しか表示されていません
を拡張するローカル・データベースからの読み取り時に任意の「loadmore」機能を必要といけない:あなたが必要なのは、そのアダプタですhttps://github.com/realm/realm-android-adapters/blob/master/adapters/src/main/java/io/realm/RealmRecyclerViewAdapter.java – pskink
のようなオンデマンドでデータをロードする必要はありません。その要素は遅延評価されているため、RealmResultsを使用します。 'RealmRecyclerViewAdapter'を使用してください。 – EpicPandaForce
RealmRecyclerViewとRealmRecyclerViewAdapterを使用して、Api 17でGalaxy S4-miniに4〜5秒かかった50kレコードを照会して表示しました。RealmResultsをクエリして取得するのは瞬間ですが、recyclerviewにデータを読み込むには時間がかかります。私は好きではないデータをロードする前に、UIスレッドがブロックされることがあります。データをロードする前にprogressdialogeを使用しました。正しい軌道にいるのですか? – mobweb