recyclerViewアダプターからフラグメントを呼び出す

a。シェハタ

imageItemクリック時にフラグメントをgetSupportFragmentManger呼び出してheraを呼び出せず、アダプターコンストラクターに渡すと機能しません

   public class MarketOneRecyclerAdapter extends       RecyclerView.Adapter<MarketOneRecyclerAdapter.MainViewHolder>{                                          
                                                                                                                                                      
       public interface OnItemClickListener {                                                                                                            
           void onItemClick(ArrayList< MarketItems> item, int Pos);                                                                                      
       }                                                                                                                                                 
       private final OnItemClickListener listener;                                                                                                       
       private ArrayList<MarketItems>marketArrayList;                                                                                                    
       private Context context;                                                                                                                          
                                                                                                                                                      
         public MarketOneRecyclerAdapter(Context context, ArrayList<MarketItems> marketArrayList,  OnItemClickListener listener) {                         
        this.listener = listener;                                                                                                                     
        this.context = context;                                                                                                                       
        this.marketArrayList = marketArrayList;                                                                                                       
    }                                                                                                                                                 
    @Override                                                                                                                                         
    public MainViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {                                                                        
        View view = LayoutInflater.from(parent.getContext())                                                                                          
                .inflate(R.layout.market_item, parent, false);                                                                                        
        return new MarketOneRecyclerAdapter.MainViewHolder(view);                                                                                     
    }                                                                                                                                                 
                                                                                                                                                      
    @Override                                                                                                                                         
    public void onBindViewHolder(MainViewHolder holder, int position) {                                                                               
        holder.bind(marketArrayList,listener,position);                                                                                               
                                                                                                                                                      
    }                                                                                                                                                 
                                                                                                                                                      
    @Override                                                                                                                                         
    public int getItemCount() {                                                                                                                       
        return marketArrayList.size();                                                                                                                
    }                                                                                                                                                 

                                                                                                                                             
    public class MainViewHolder extends RecyclerView.ViewHolder{                                                                                      
                                                                                                                                                      
        ImageView imageItem;                                                                                                                          
        CardView cardView;                                                                                                                            
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
        public MainViewHolder(View itemView) {                                                                                                        
                                                                                                                                                      
            super(itemView);                                                                                                                          
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
            cardView= (CardView) itemView.findViewById(R.id.market_card_view);                                                                        
            imageItem= (ImageView)      itemView.findViewById(R.id.market_item_imageView);                                                                 
            imageItem.setOnClickListener(new View.OnClickListener() {                                                                                 
                @Override                                                                                                                             
                public void onClick(View view) {                                                                                                      
                                                                                                                                                      
                    //Want here call a fragment                                                                                                       
                                                                                                                                                      
                }                                                                                                                                     
            });                                                                                                                                       
                                                                                                                                                      
                                                                                                                                                      
        }                                                                                                                                             
        public void bind(final ArrayList<MarketItems> item, final OnItemClickListener listener , final int i){                                        
                            Picasso.with(context).load(marketArrayList.get(i).getImages()).networkPolicy(NetworkPolicy.OFFLINE).into(imageItem);                      
                                                                                                                                                      
                                                                                                                                                      
            imageItem.setTag(item.get(i).getImages());                                                                                                
                                                                                                                                                      
            itemView.setOnClickListener(new View.OnClickListener() {                                                                                  
                @Override                                                                                                                             
                public void onClick(View view) {                                                                                                      
                    listener.onItemClick(item,i);                                                                                                     
            `enter code here`       }                                                                                                                                     
            });                                                                                                                                       
        }                                                                                                                                             
    }                                                                                                                                                 
}     

public  class ImageItemFragment extends Fragment {
    ImageView imageView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View view =inflater.inflate(R.layout.fragment_image_item, container, false);

        imageView= (ImageView) view.findViewById(R.id.market_item_image);
        //Picasso.with(getActivity()).load(marketItems.getImages()).networkPolicy(NetworkPolicy.OFFLINE).into(imageView);


        return view;
    }
}
アジンキャカラスカー

ホルダーはViewHolderinOnBindViewHolderです

holder.image_btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            AppCompatActivity activity = (AppCompatActivity) v.getContext();
            Fragment myFragment = new TaskApprovalFragmentDetails();
            activity.getSupportFragmentManager().beginTransaction().replace(R.id.linearlayouttaskapproval, myFragment).addToBackStack(null).commit();


        }
    });

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

アダプタのフラグメントから要素を呼び出す

分類Dev

ViewPagerのフラグメントからアダプタを呼び出す

分類Dev

アダプタからフラグメントを呼び出す方法

分類Dev

リサイクラーアダプターからフラグメントにデータを送信する方法| recyclerviewアダプタからフラグメント関数を呼び出す方法

分類Dev

フラグメント内のRecyclerViewアダプターのメソッドを呼び出す方法

分類Dev

Android:viewPagerのフラグメントからListViewのアダプターのgetview()を呼び出す

分類Dev

アダプタクラスからフラグメントメソッドを呼び出す

分類Dev

カスタムアダプタからフラグメントの関数を呼び出す方法

分類Dev

フラグメントからダイアログを呼び出す方法

分類Dev

フラグメントからアダプタメソッドを呼び出せませんでした

分類Dev

別のフラグメントのアダプターからRecyclerViewフラグメントを更新します

分類Dev

フラグメントからフラグメントへのメソッドの呼び出し(アダプターの更新)

分類Dev

リストビューアイテムのボタンからフラグメントを呼び出す

分類Dev

フラグメントからRecyclerViewアダプターに通知する

分類Dev

アダプターRecyclerViewからフラグメントを開く

分類Dev

データとともにフラグメントからフラグメントを呼び出す方法

分類Dev

Kotlin:RecyclerViewアダプターからフラグメントにデータを送信する方法

分類Dev

recyclerviewアダプターからフラグメント間でデータを渡す方法

分類Dev

Recyclerviewアダプターからフラグメントにデータを渡します

分類Dev

フラグメント内のリストアダプタを呼び出すとクラッシュする

分類Dev

別のフラグメントからRecyclerViewアダプターをリセットします

分類Dev

RecyclerViewアダプターのOnClickListenerがクラッシュする:アクティビティコンテキストの外部からstartActivity()を呼び出すには、FLAG_ACTIVITY_NEW_TASKフラグが必要です

分類Dev

ダイアログフローのフォローアップインテントで親インテントのパラメータを呼び出す方法

分類Dev

アクティビティからタブ付きフラグメントメソッドを呼び出す

分類Dev

ListViewアダプターがフラグメントを介して呼び出されない

分類Dev

アクティビティからフラグメントを呼び出す

分類Dev

WWWフォルダーのangular 2アプリからcordovaプラグインを呼び出す

分類Dev

RecyclerViewアダプターから文字列をフラグメントで取得し、それを別のフラグメントに表示します

分類Dev

AndroidフラグメントからNavigationDrawerを呼び出す方法

Related 関連記事

  1. 1

    アダプタのフラグメントから要素を呼び出す

  2. 2

    ViewPagerのフラグメントからアダプタを呼び出す

  3. 3

    アダプタからフラグメントを呼び出す方法

  4. 4

    リサイクラーアダプターからフラグメントにデータを送信する方法| recyclerviewアダプタからフラグメント関数を呼び出す方法

  5. 5

    フラグメント内のRecyclerViewアダプターのメソッドを呼び出す方法

  6. 6

    Android:viewPagerのフラグメントからListViewのアダプターのgetview()を呼び出す

  7. 7

    アダプタクラスからフラグメントメソッドを呼び出す

  8. 8

    カスタムアダプタからフラグメントの関数を呼び出す方法

  9. 9

    フラグメントからダイアログを呼び出す方法

  10. 10

    フラグメントからアダプタメソッドを呼び出せませんでした

  11. 11

    別のフラグメントのアダプターからRecyclerViewフラグメントを更新します

  12. 12

    フラグメントからフラグメントへのメソッドの呼び出し(アダプターの更新)

  13. 13

    リストビューアイテムのボタンからフラグメントを呼び出す

  14. 14

    フラグメントからRecyclerViewアダプターに通知する

  15. 15

    アダプターRecyclerViewからフラグメントを開く

  16. 16

    データとともにフラグメントからフラグメントを呼び出す方法

  17. 17

    Kotlin:RecyclerViewアダプターからフラグメントにデータを送信する方法

  18. 18

    recyclerviewアダプターからフラグメント間でデータを渡す方法

  19. 19

    Recyclerviewアダプターからフラグメントにデータを渡します

  20. 20

    フラグメント内のリストアダプタを呼び出すとクラッシュする

  21. 21

    別のフラグメントからRecyclerViewアダプターをリセットします

  22. 22

    RecyclerViewアダプターのOnClickListenerがクラッシュする:アクティビティコンテキストの外部からstartActivity()を呼び出すには、FLAG_ACTIVITY_NEW_TASKフラグが必要です

  23. 23

    ダイアログフローのフォローアップインテントで親インテントのパラメータを呼び出す方法

  24. 24

    アクティビティからタブ付きフラグメントメソッドを呼び出す

  25. 25

    ListViewアダプターがフラグメントを介して呼び出されない

  26. 26

    アクティビティからフラグメントを呼び出す

  27. 27

    WWWフォルダーのangular 2アプリからcordovaプラグインを呼び出す

  28. 28

    RecyclerViewアダプターから文字列をフラグメントで取得し、それを別のフラグメントに表示します

  29. 29

    AndroidフラグメントからNavigationDrawerを呼び出す方法

ホットタグ

アーカイブ