2017-03-27 11 views
0

私の問題は、2つのrecyclerviewクラス(users.classとlist.class)に対して同じcardAdapter.classを使用していることです。ファイルを取得します。クラス名android?

しかし、私はそれぞれに異なる何かをしたいのですが、これは私のcardadapter - users.classまたはlist.classからどのクラスのユーザーがいるか知る必要があります。

私が試した:

class CardAdapter extends RecyclerView.Adapter<CardAdapter.ViewHolder> { 
    public String class_name = this.getClass().getSimpleName(); 

をそれが返されます。CardAdapter

任意のアイデアはどのように私はcardAdapterを使用しているクラスを得ることができますか? (users.classまたはlist.class)cardAdapter自体の代わりに?

答えて

1

コンテキスト(フラグメント、アクティビティなど)をコンストラクタ経由でアダプタに送信します。

CardAdapter adapter = new CardAdapter(yourDataList, mContext) 

とケース場合は、以下のように使用します。

if(mContext instanceof ActivityUsers){ 
    //Do what you need 
}else if(mContext instanceof ActivityList){ 
    //Do what you need 
} 

それを行うには多くの方法がありますが、それは最も簡単な1の1です。

+0

ありがとう、私はそれを試してみよう! –

関連する問題