2017-03-27 4 views
0

Mein Problem ist, dass ich die gleiche cardAdapter.class für zwei Recyclerview-Klassen (users.class und list.class) verwenden.Get File.class Name Android?

Aber ich möchte in jedem etwas anders machen, dafür muss ich wissen, welcher Klassenbenutzer von meinem cardadapter - users.class oder list.class ist.

Ich habe versucht:

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

aber es gibt: CardAdapter

irgendwelche Ideen, wie kann ich die Klasse erhalten, die cardAdapter verwendet? (users.class oder list.class) anstelle des cardAdapters selbst?

Antwort

1

Senden Sie Ihren Kontext (Fragment, Aktivität usw.) per Konstruktor an den Adapter.

CardAdapter adapter = new CardAdapter(yourDataList, mContext) 

Und verwenden, wenn Fall wie folgt:

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

Es gibt viele Möglichkeiten, es zu tun, ist es eines der am einfachsten ein.

+0

vielen dank, ich werde es versuchen! –