Erste Lösung:
Sie können die Startaktivität in Ihrem Adapter folgendermaßen aufrufen:
public class YourAdapter extends Adapter {
private Context context;
public YourAdapter(Context context) {
this.context = context;
}
public View getView(...){
View v;
v.setOnClickListener(new OnClickListener() {
void onClick() {
context.startActivity(...);
}
});
}
}
Zweite Lösung:
Sie können onClickListener
Ihren Button aus der YourAdapter
Klasse heraus aufrufen . Folge diesen Schritten:
Erstellen Sie eine Schnittstelle wie diese:
public YourInterface{
public void yourMethod(args...);
}
Dann in Ihrem Adapter:
public YourAdapter extends BaseAdapter{
private YourInterface listener;
public YourAdapter (Context context, YourInterface listener){
this.listener = listener;
this.context = context;
}
public View getView(...){
View v;
v.setOnClickListener(new OnClickListener() {
void onClick() {
listener.yourMethod(args);
}
});
}
Und wo Sie Ihren Adapter initiieren, ist wie folgt:
YourAdapter adapter = new YourAdapter(getContext(), (args) -> {
startActivity(...);
});
Dieser Link kann für Sie nützlich sein.