問題タブ [android-recyclerview]

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.

0 投票する
4 に答える
5556 参照

android - ボレー画像リクエスト付きのリサイクラー ビュー (リクエストのキャンセル)

そのため、リサイクラー ビューを使用して画像をグリッドに表示し、ボレー ライブラリを使用して URL からビットマップとして画像をダウンロードしています。

問題は、画像がダウンロードされる前に1つ以上のビューをスクロールしてスキップし、そのビューがリサイクルされると、それらの中間ビューで画像のダウンロード要求がキャンセルされず、実際の画像がダウンロードされる前にその/それらの画像のフラッシュが発生することですそのビューにロードされます。

そのため、タグを使用してこれらの中間画像リクエストをキャンセルすることを考えましたが、他の並列ビューでもリクエストがキャンセルされるため、方法がわかりません!

また、ボレーNetworkImageView(そのような画像のキャンセルを単独で処理する)を使用すると、完璧な結果が得られます。しかし、すべての画像のビットマップを取得して色を選択する必要があるため、NetworkImageView を使用できません。

Q) recyclerview を使用して膨らませた特定のイメージビューで、保留中のすべてのボレー イメージ リクエスト (ロードする必要があり、他の並列ビューに影響を与えないものを除く) をキャンセルするにはどうすればよいですか?

0 投票する
6 に答える
26284 参照

android - RecyclerView の使用エラー: 指定された子には既に親があります

新しい RecyvlerView アダプターで listView を作成しようとしています。Android開発者リソースにある正確なガイドに従いました。しかし、これは私に奇妙なエラーを与えています:指定された子にはすでに親があります。最初に子の親で removeView() を呼び出す必要があります。 私は最新のSDKを持っています。また、gradle で依存関係を定義します。

MyActivity (メイン アクティビティ):

MyAdapter :

my_text_view.xml (リスト項目のレイアウト):

activity_my.xml (メイン アクティビティ):

logcat の出力は次のとおりです。

0 投票する
4 に答える
11549 参照

android - FrameLayout の RecyclerView の上のビューの膨張

ボタンをクリックすると、EditTexta の上にan を膨らませようとしていRecyclerViewます。ただし、EditText がレイアウトの上部に追加されて RecyclerView が押し下げられるのではなく、RecyclerView の上に配置され、次のようにカバーされます。

ここに画像の説明を入力

「New Text」が RecyclerView の最初の項目を覆っていることがわかります。RecyclerView の上に膨らませて、RecyclerView を押し下げて、新しく追加された EditText に対応するにはどうすればよいですか?

EditText を追加する FrameLayout の XML は次のとおりです。

RecyclerView の上に EditText を追加する私の FloatingActionButton の onClick メソッドは次のとおりです。

追加する EditText の XML は次のとおりです。

0 投票する
4 に答える
199231 参照

java - フラグメントで RecyclerView を表示する

Android Lollipopの新機能を試していますが、RecyclerView行き詰っています。

TextViewアイコンと、アイコンの右側にあるリストを受信しようとしていますFragment

のセットアップ方法に関するこの素晴らしいチュートリアルを見つけましRecyclerViewた。私はすべての点に従いitem_layout.xml、自分のニーズに合うように変更しただけです.

プロジェクトはエラーなしでビルドされますが、デバイスで起動すると次のエラーが発生します。

java.lang.RuntimeException: アクティビティ ComponentInfo を開始できません {com.fredrikaldgard.materialcolors/com.fredrikaldgard.materialcolors.MainActivity}: java.lang.NullPointerException: 仮想メソッド 'void android.support.v7.widget.RecyclerView を呼び出そうとしました。 null オブジェクト参照に対する setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager)'

問題をグーグルで検索しようとしましたが、私はAndroid開発の素人です。

これが私のものMainActivityです:

そして私のMyAdapter

編集:これがFragment

何が間違っている可能性がありますか?

0 投票する
1 に答える
24292 参照

android - RecyclerView でのスワイプおよび OnClick イベント

RecyclerView でアクションを閉じるスワイプを実装しようとしていますが、ViewHolder の任意のビューに OnClickListener を設定すると、そのビューのすべての OnTouch イベントがオーバーライドされます。

OnClickListener を放棄して、TouchListener ですべてのクリックを処理できますが、RecycleView の子ビューに複数のボタンがある場合、それは多くのコードになり、これは正しい方法のようには見えません。

私の RecyleView では、リスナーを閉じるようにスワイプを設定しています(これに似ています):

ListView では機能しますが、RecycleView では OnClickListener が OnTouchListner イベントをブロックします。

ViewHolder ビューのレイアウトの例。

RecyclerView.Adapter でのインフレ:

ビューホルダー:

0 投票する
1 に答える
2200 参照

android - Android - kitkat の RecyclerView

RecyclerView src は android.support.v7.widget.RecyclerView にあるため、サポート ライブラリ (または Google Play サービス) からこのパッケージを参照する限り、キットカットとジェリー ビーンで recyclerView を使用できますか?

0 投票する
3 に答える
4796 参照

android - RecyclerView に入力するときの ArrayIndexOutOfBoundsException

RecyclerView にデータを入力しようとすると、エラーが頻繁に発生しますが、エラーは内部で発生しているようStaggeredGridLayoutManagerです。

データベースから RecyclerView を作成し、これを使用してアダプターに画像を追加します

奇妙なのは、アプリが最初にロードされたときは問題なく、すべてが正しく表示されることですが、現在 RecyclerView にあるものをデータベースクエリに基づいて別の画像セットに置き換えると、最初の画像に戻って再びこのエラーが発生します。

すべての画像を問題なく通過しますが、onBindViewHolder再度呼び出す準備ができたらクラッシュします。

RecyclerView のデータを変更するときは、クエリから新しいデータを入力する前に、まずこれですべてを削除します

また、それらを一度に挿入してnotifyItemRangeInsertedから、開始位置と画像の総数を呼び出してみましたが、それでも同じエラーでクラッシュしました。

編集

グリッドに配置する必要がある約 20 個のアイテムにヒットしたときに発生するようです。使うだけならnotifyDatasetChanged問題ないようですが、使いたいnotifyItemRangeInsertedので素敵な挿入アニメーションが得られます

他の誰かがこの問題を見たことがありますか?

EDIT2

これが私のonCreateViewHolder

と私onBindViewHolder

編集3

アダプターを交換するときは、次のようにします。

選択したナビゲーション ドロワーのインデックス変更で、ローダーを初期化してクエリを作成します

次に、ローダーの onLoadFinished で、オブジェクトをアダプターに追加します