問題タブ [recyclerview-layout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - RecyclerView が毎回データを正しく表示しない
recyclerview では、最初の実行時に出力が表示されることもあれば、2 回目または 3 回目に出力が表示されることもあります...そして最悪の場合、データがまったく表示されないことがあります。データを取得しているリンクは正常に機能しています。誰かが私がどこで間違いを犯しているか教えてもらえますか. この問題に関する他の回答を見ましたが、うまくいきませんでした!
アダプターコードはこちら
そして、これが私のJSONクラスです
そして、これが私がデータを表示しているアクティビティコードです
そして、これが私が使用しているXMLレイアウトです
同じパターンを使用するアクティビティがいくつかあります...データが説明どおりに表示される場合と、そうでない場合があります。どんな助けでも大歓迎です。
編集: recyclerViewAdapter.notifyDataSetChanged() を使用した後、NPE を取得しています。このメソッドのリフを取得する方法についての提案。
notifyDataSetChanged() を追加した後の完全な LogCat は次のとおりです。
致命的な例外: AsyncTask #1 プロセス: admin.myproject、PID: 27693 java.lang.RuntimeException: Android.os.AsyncTask$3.done(AsyncTask.java:309) で doInBackground() を java.util で実行中にエラーが発生しました。 java.util.concurrent.FutureTask.setException(FutureTask.java:223) で、java.util.concurrent.FutureTask.run(FutureTask.java:242) android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) で java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) で java.util.concurrent.ThreadPoolExecutor$Worker.run( ThreadPoolExecutor.java:588) で java.lang.Thread.run(Thread.java:818) 原因: java.lang.NullPointerException: 仮想メソッド 'void admin.myproject.RecyclerViewAdapter.notifyDataSetChanged()' を呼び出そうとしていますadmin.myproject.JSONAsync.downloadUrl(JSONAsync.java:76) の null オブジェクト参照で admin.myproject.JSONAsync.doInBackground(JSONAsync.java:40) で admin.myproject.JSONAsync.doInBackground(JSONAsync.java:23) android.os.AsyncTask$2.call(AsyncTask.java:295) で java.util.concurrent.FutureTask.run(FutureTask.java:237) で android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) で java.lang.Thread.run(Thread.java) :818)
android - リサイクラー ビューの重複アイテムの作成
アイテムのリストを作成するためにリサイクラー ビューを使用していますが、リストに重複したアイテムが表示されます。30 サイズのリストを Recycler View Adapter に渡しました。作成されたリストには 30 個の項目がありますが、一意の項目は 3 つしかなく、他のすべては 3 つの一意の項目の繰り返しです。バグを見つけることができません。
android - RecyclerView Last Item に奇妙なアニメーションが表示される
RecyclerView
単一の item 、2 つの s に 2つのビューがあり、RelativeLayout
ある時点で両方RelativeLayouts
を反転LayoutA
して0 to 180
います。それは完璧に機能しますが、画面にスペースがない場合 (例: の最後の項目)、このフリップを開始する前に、奇妙な効果が得られますLayoutB
-180 to 0
RecyclerView
気が狂う
フリップイン
アダプターコード
scrollToPosition
メソッドへの呼び出しを行っていませんが、logcatはこれを繰り返し出力します
ログキャット
これに対する修正はありますか?
java - 更新後に RecyclerView アイテムのサイズが変わる
私はRecyclerView
次の画像が示すように持っています:
これは、このセットアップ コードですRecyclerView
。
RecyclerView の選択した項目を更新する新しいアクティビティを開始した後、RecyclerView には新しい変更を反映するために新しいデータが再入力されますが、次の結果が得られます。
そして、下にスクロールすると、次のギャップが生じます。
更新後に , を呼び出してみましたが、役に立ちませんRecyclerView#invalidate()
でし#invalidateItemDecorations()
た。#requestLayout()
&私も電話setHasFixedSize(true)
していませんRecyclerView
。
問題は正確には何ですか?リフレッシュ後にコンテンツを正確にラップするように、子アイテムのサイズを変更するにはどうすればよいですか?
(PS: 何も変更せずにリフレッシュしようとしましたが、何も起こりませんでした。これは、子アイテムの高さが変更された場合にのみ問題が発生するという私の理論を証明しています。)