2 Recyclerviewに同じRecyClerviewAdapterを使用してください -- android フィールド と android-recyclerview フィールド 関連 問題

Use same RecyclerViewAdapter for 2 RecyclerView's












0
vote

問題

日本語

実際に2 <コード> RecyclerView に2 <コード> RecyclerView が2 <コード> RecyclerView <に実装しています。 / CODE> 1つの作業が正しく、ボタンで作られていて、一部の文字列を含むボタンで作られています。から文字列データを置くことができるようになるボタン <コード> onClick <コード> RecyclerViewAdapter <コード> RecyclerViewAdapter < RecyclerView には、<コード> 99887667 を実装する方法を得ることができません。 / CODE>ボタンのメソッドで、それらからデータを取得して新しい RecyclerView に入れるだけですが、それを行う方法がわかりません。

どうすれば私は何もしますか?

ここに私のレイアウトのスクリーンショットは2つの RecyclerViewAdapter0

です。

イメージの説明を入力します。ここで

RecyclerViewAdapter1 からのコードはRecyclerList_item.xmlと呼ばれ、3つのTextViewの "desc、qta、imp"が含まれています。 Plain <事前> <コード> RecyclerViewAdapter3

英語

i'm having some issues on implementing 2 RecyclerView's to the same RecyclerViewAdapter actually in my main.class i have 2 RecyclerView's one work's properly and it's made of buttons that contain some strings and i have also another RecyclerView where i would be able to put the string data from the buttons onClick but i can't get how can i implement another RecyclerView to RecyclerViewAdapter i have yet the onClick method on buttons so i have just to get data from them and put them to the new RecyclerView but i don't know how to do it.

Any suggestion on how can i do?

Here is the screenshot of my layout with two recyclerView's

enter image description here

While here is the code from the RecyclerViewAdapter the second recyclerView to implement is called recyclerlist_item.xml and it contain 3 TextView's called "Desc,Qta,Imp"

public class Adapter extends RecyclerView.Adapter<Adapter.ViewHolder> {      private ArrayList<Item> mArrayList;     private OnItemClickListener mListener;      public interface  OnItemClickListener{         void onItemClick(int position);     }      public void setOnItemClickListener(OnItemClickListener listener){         mListener = listener;     }      public static class ViewHolder extends RecyclerView.ViewHolder{          public TextView mTextView;          public ViewHolder(View itemView, final OnItemClickListener listener) {             super(itemView);             mTextView = itemView.findViewById(R.id.ButtonName);               itemView.setOnClickListener(new View.OnClickListener() {                 @Override                 public void onClick(View v) {                     if(listener != null){                         int position = getAdapterPosition();                         if(position != RecyclerView.NO_POSITION){                             listener.onItemClick(position);                         }                     }                 }             });          }     }   public static class ListHolder extends  RecyclerView.ViewHolder{          public TextView desc;         public TextView qta;         public TextView imp;       public ListHolder(View listView) {         super(listView);          desc = listView.findViewById(R.id.Desc);         qta = listView.findViewById(R.id.Qta);         imp = listView.findViewById(R.id.Imp);       }   }      public Adapter(ArrayList<Item> itemList){             mArrayList = itemList;     }      @NonNull     @Override     public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {         View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item, parent, false);         ViewHolder viewHolder = new ViewHolder(v, mListener);         return viewHolder;     }      @Override     public void onBindViewHolder(@NonNull ViewHolder holder, int position) {                 Item currentItem = mArrayList.get(position);                  holder.mTextView.setText(currentItem.getBtnName());     }      @Override     public int getItemCount() {         return mArrayList.size();     } } 
</div
     

回答リスト

0
 
vote

質問をまっすぐにしましょう、一番下のRecyclerviewでクリックした項目が一番上に表示されますか?

もしそうならこのようなものを試してみてください:

<事前> <コード> List<Item> selectedItemList = new ArrayList<>(); Adapter mAdapter = new Adapter(itemArrayList); mAdapter.setOnItemClickListener( new OnItemClickListener(){ @override void onItemClick(int position){ Item item = itemArrayList.get(position); if( !selectedItemList.contains(item) ){ selectedItemList.add( item ); topAdapter.notifyItemInserted(selectedItemList.size() - 1); } } });

この例では、 topadapter は、 selectedItemlist リストで書く必要がある新しいアダプタです。そのアダプターはあなたの listholder viewholderを使うべきです。

 

Let me get the question straight, you want any items clicked in the bottom RecyclerView to appear in the top one?

If so try something like this:

List<Item> selectedItemList = new ArrayList<>();  Adapter mAdapter = new Adapter(itemArrayList); mAdapter.setOnItemClickListener( new OnItemClickListener(){      @override     void onItemClick(int position){         Item item = itemArrayList.get(position);          if( !selectedItemList.contains(item) ){             selectedItemList.add( item );             topAdapter.notifyItemInserted(selectedItemList.size() - 1);         }     }  }); 

In this example topAdapter is a new adapter you need to write and back with the selectedItemList List. That adapter should use your ListHolder ViewHolder.

</div
 
 

関連する質問

0  Recyclerviewでカードを拡大して折りたたむ方法  ( How to expand and collapse cards in recyclerview ) 
私はインターネット上で20-30のリンクを経験しましたが、すべてのコードには限界があるため有用でした。 詳細ボタンをクリックすると拡張したいRecyclerviewのRelativeLayoutにカードがあります。 CardViewsは単にリストビューとボタン...

-6  RecyClerview OnCreateViewholderは実行されません  ( Recyclerview oncreateviewholder does not run ) 
私は何時間を検索しています、そして私はそれが単純なものであると確信していますが、私は答えを見つけることができません。 <コード> onCreateViewHolder および<コード> onBindViewHolder は実行されません。誰かが私を助けてくれる...

0  Android:SQLiteデータベースへのタイムスタンプの追加を修正するにはどうすればよいですか。 [複製]  ( Android how do i fix timestamp addition to my sqlite database ) 
この質問はすでにここで回答を持っています sqliteopenhelper oncreate()/ onupgrade()は実行されますか? (15回答) ...

0  GridLayoutManagerのアイテムに高さを修正する方法?  ( How to make fix height on items in gridlayoutmanager ) 
GridLayOutManagerを使用して、画像とテキストでグリッドを作ります。しかし、現在1行のテキストの上にある場合、そして2番目の行のテキストには2行がある場合、現在、私のアイテムは異なる高さを持っています。すべてのアイテムを互いに等しくする方法(す...

1  RecycleViewでのスクロール効果のバウンス  ( Bounce scrolling effect in recycleview ) 
Android RecycleViewにバウンスアニメーション効果を実装したい。 どうやってそうできますか? <事前> <コード> <android.support.v7.widget.RecyclerView android:id="@+id/re...

88  Android Recyclerviewスクロール性能  ( Android recyclerview scrolling performance ) 
Recyclerviewの例を作成しましたリストとカードの作成ガイド。私のアダプタはレイアウトを膨らませるためのパターン実装を持っています。 問題は、スクロール性能が悪いです。これは8項目のみのRecycleViewで テストによっては、Android ...

1  Androidのスタガグリッドレイアウトに水平方向のフルスクリーンカードを追加する  ( Adding horizontal full screen card in staggered grid layout in android ) 
スタガードグリッドレイアウトの使い方を知っていますが、このレイアウトデザインは私を超えています。誰かがこのレイアウトデザインを達成する方法を教えてもらえますか?このようなレイアウトデザインをやりました。 しかし望ましいレイアウトはこのようなものです。 ...

2  Recyclerviewに表示されていません  ( Images not displayed in recyclerview ) 
私のアプリケーションのURLからギャラリーとして画像を表示したい。 参考にこれを使用しました。 > http:// www .androidhive.info / 2016/04 / Android-Glide-Image-Library-Building-...

2  RecyClerviewからのデータが消えます  ( Disappearing data from recyclerview ) 
ViewPagerを含むフラグメントを使ってアプリを作成しました。そのViewPagerの内側はRecyClerviewを使用してリストを表示しています。アプリを起動するとすべてが素晴らしいです。しかし、私がいくつかのタブをスワイプして戻ってくるリストは表示...

0  BACKボタンを押すと、MediaPlayerを使用したアクティビティがリセットされます  ( Activity using mediaplayer resets when back button pressed ) 
RecyClerviewを使用してストリーミングされるオーディオのリストを表示するための音声活動性を持っています。戻るを押してMainActivityに戻って再度AudiaActiviyを開くと、オーディオのシークバーとタイマーがリセットされますが、音楽はま...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有