次のアドレスにある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. データベースからレコードをフェッチし、DHTMLXSchedulerでイベントとして表示する方法
- 2. V - コンソールでフェッチした後にレコードを表示しない
- 3. 最後に100件のレコードでタイトルごとにmysqlを検索
- 4. ノードスクリプトから実行したときにbashコマンドを表示する方法
- 5. Ruby on Rails:子孫レコードをフェッチして表示するには?
- 6. リフレッシュしてloadmore listviewをfacebookのように表示します
- 7. backbone.jsでフェッチした後にモデルデータを表示するには
- 8. 1秒ごとに異なるアクションを実行してから4秒ごとに繰り返す方法
- 9. rxJava sqliteからデータをフェッチし、リサイクラビューで表示する方法
- 10. C#MVC - 意図した改行でSQLからレコードを表示する方法
- 11. iOS:NSFetchResultsControllerがフェッチを実行しているときに回転ホイールを表示
- 12. データベーステーブルからテーブルにすべてのレコード行を表示する方法
- 13. Eclipseを実行しているときに、コードを実行した後でコンソールにエラーが表示される
- 14. イベント後に発生したレコードのみを表示する方法 - 。 Redshift/Postgresql -
- 15. 行ごとに2つのドロップダウンulを表示する方法
- 16. line_item.quantity(Liquid)ごとに行を表示する方法
- 17. sqliteからフェッチされたレコードを表示できません
- 18. 実行ごとにレコードを追加します。
- 19. 四半期ごとのレコードのデータを1行に表示
- 20. データベースからフェッチした後にマングースシングルトンを必要とする
- 21. Firebaseからデータをフェッチし、Androidのマルチタブに表示する方法は?
- 22. Heroku Dynoを実行して一度実行した後にシャットダウンする方法
- 23. 100回繰り返しごとに関数を実行しますが、最後のものもキャッチします
- 24. firebase-databaseから時間を取得した後にタイマーを実行したい、ReactJSのsetInterval()を使って1秒ごとに時間を減らす方法
- 25. テーブルからレコードのテーブルに値をフェッチする方法
- 26. React App:フェッチを使用してAPIからデータを表示する方法
- 27. 5分ごとにcronjobを実行しますが、最初の実行後に停止しましたか?
- 28. インフォーマティカの実行ごとに分割レコードをロードする方法は?
- 29. サーバーからデータをフェッチした後に、anglejs ui-calendarをリフレッシュする方法
- 30. 行ごとにJTableを表示する
を拡張するローカル・データベースからの読み取り時に任意の「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