7

ich einen Adapter Klasse nennen:android wie startActivityForResult innerhalb eines Adapters

public class AdapterAllAddress extends BaseExpandableListAdapter { 
private Context context; 
    public AdapterAllAddress(Context context, 
      ArrayList<AllAddressesGroup> groups) { 
     // TODO Auto-generated constructor stub 
     this.context = context; 
    } 
} 

Ich möchte startActivityForResult anrufen, wenn eine Schaltfläche klicken, ich weiß, ich startActivity wie folgt aufrufen können:

context.startActivity() 

aber ich bin auf der Suche nach Aktivität mit Ergebnissen, wie bitte?

Antwort

20
yourButton.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
    // TODO Auto-generated method stub 
     Intent intent = new Intent(context, YourNewActivity.class); 
     ((Activity) context).startActivityForResult(intent, resultCode); 
    } 
}); 
+0

ich es versuche, würden Sie bitte warten – user2059935

+0

Ihre Zeit in Anspruch nehmen. –

+0

vielen Dank – user2059935

2

Ich wollte nur ein Detail zeigen, die ich in meinem Fall konfrontiert E/ActivityThread (31584): Stopp der Tätigkeiten, die nicht wieder aufgenommen wird: {com.example.test/activities.MainActivity} meisten Wahrscheinlich übergeben Sie getApplicationContext() an den Konstruktor des Adapters. Um dies zu vermeiden, müssen Sie bieten „CallingActivity.this“ an den Konstruktor des Adapters als Kontext Objekt, beachten Sie dies.