タグ付けされた質問 「recycler-adapter」


30
recyclerviewアダプターは接続されていません。レイアウトをスキップ
RecyclerView私のコードに実装しただけで、を置き換えListViewます。 すべてが正常に動作します。データが表示されます。 しかし、エラーメッセージが記録されています。 15:25:53.476 E/RecyclerView: No adapter attached; skipping layout 15:25:53.655 E/RecyclerView: No adapter attached; skipping layout 次のコードの場合: ArtistArrayAdapter adapter = new ArtistArrayAdapter(this, artists); recyclerView = (RecyclerView) findViewById(R.id.cardList); recyclerView.setHasFixedSize(true); recyclerView.setAdapter(adapter); recyclerView.setLayoutManager(new LinearLayoutManager(this)); ご覧のとおり、のアダプターを取り付けましたRecyclerView。では、なぜこのエラーが発生し続けるのですか? 同じ問題に関連する他の質問を読みましたが、どれも役に立ちません。

14
RecyclerViewで選択したアイテムを適切に強調表示する方法は?
RecyclerView横置きとして使用していListViewます。選択したアイテムを強調表示する方法を見つけようとしています。アイテムの1つをクリックすると、アイテムが選択されて適切に強調表示されますが、別のアイテムをクリックすると、2番目のアイテムが古いアイテムで強調表示されます。 これが私のonClick関数です: @Override public void onClick(View view) { if(selectedListItem!=null){ Log.d(TAG, "selectedListItem " + getPosition() + " " + item); selectedListItem.setBackgroundColor(Color.RED); } Log.d(TAG, "onClick " + getPosition() + " " + item); viewHolderListener.onIndexChanged(getPosition()); selectedPosition = getPosition(); view.setBackgroundColor(Color.CYAN); selectedListItem = view; } ここにありますonBindViewHolder: @Override public void onBindViewHolder(ViewHolder viewHolder, int position) { viewHolder.setItem(fruitsData[position]); …

11
RecyclerViewアイテムの展開/折りたたみ
詳細を表示するために、recyclerViewのアイテムを展開/折りたたみます。SlideExpandableListViewと同じ効果を実現したいのですが。 基本的に私のviewHolderには表示されていないビューがあり、可視性をVISIBLE / GONEのみに設定するのではなく、スムーズな展開/縮小アニメーションを実行したいと思います。一度に展開する必要があるのはアイテムだけです。アイテムが選択されていることを示すためにある程度の高さがあると便利です。 これは、新しいAndroidの最近の通話履歴リストと同じ効果です。オプション「コールバック」と「詳細」は、アイテムが選択されている場合にのみ表示されます。

6
単一アイテムを表示するリサイクラービュー
recyclerviewが単一のアイテムしか表示しないという奇妙なエラーに直面しています。以下は、recyclerviewアダプターのコードです。 public class ChatAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { List<chat> chats; String username; final int My=0,Their=1; public ChatAdapter(List<chat> chats) { this.chats = chats; this.username = PushApp.getApp().getSPF().getStringData(Constants.ANAME); } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { RecyclerView.ViewHolder viewHolder; LayoutInflater inflater = LayoutInflater.from(parent.getContext()); switch (viewType) { case My: View v1 = inflater.inflate(R.layout.my_chat_child, parent, false); …

13
RecyclerViewで特定のアイテムを更新/更新する方法
で特定のアイテムを更新しようとしていRecyclerViewます。 ストーリー:ユーザーがアイテムをクリックするたびに、が表示されますAlertDialog。ユーザーは[OK]ボタンをクリックしてテキストを入力できます。このテキストをこのアイテムに表示して非表示にしたいImageView-XMLとアダプターで宣言ViewHolder- AlertDialogポジティブボタンでこの関数を使用して、アイテムを更新しました。 private void updateListItem(int position) { View view = layoutManager.findViewByPosition(position); ImageView medicineSelected = (ImageView) view.findViewById(R.id.medicine_selected); medicineSelected.setVisibility(View.VISIBLE); TextView orderQuantity = (TextView) view.findViewById(R.id.order_quantity); orderQuantity.setVisibility(View.VISIBLE); orderQuantity.setText(quantity + " packet added!"); medicinesArrayAdapter.notifyItemChanged(position); } しかし、このコードは渡された位置のitemViewを変更するだけでなく、他のいくつかのitemViewも変更します! 特定のitemViewをクリックして正しく変更するにはどうすればよいですか?



3
:getView()がnullの場合、つまりonCreateView()の前またはonDestroyView()の後では、フラグメントビューのLifecycleOwnerにアクセスできません。
アプリケーションのすべてのネットワーク呼び出しと応答処理にライブデータを使用しています。 シナリオの1つでは、私のリサイクラービューがビューホルダーのデータをロードonBindし、応答がUIを更新しています。そのためにはlifecycleOwner、オブザーバーにを提供する必要があります。 リサイクラービューには独自のライフサイクルオーナーがないため、親フラグメントを使用して使用してparentFragment.viewlifecycleOwnerいますが、どういうわけかエラーが発生します。 親フラグメントにインスタンスがない場合、ビューホルダーはどのようにインスタンスを持つことができますか? viewModel.responseState.observe(parentFragment.viewLifecycleOwner, Observer { updateUI(it) }) 致命的な例外:java.lang.IllegalStateException:getView()がnullの場合、つまりonCreateView()の前またはonDestroyView()の後では、フラグメントビューのLifecycleOwnerにアクセスできません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.