다른 Android 프로젝트에 내 앱을 구현해야하며 이제 onActivityResult 메소드가 작동하지 않는 문제에 직면하고 있습니다. 내가 성취하고자하는 것은 Intent가 클래스 1 (G_map)에 결과를 반환하지만 작동 방법을 파악할 수 없다는 것입니다.java android, onActivityResult가 작동하지 않습니다.
public class G_map extends GraphObj{
private Context contextOwn;
private Activity act;
public G_map(GraphObjMgr gom, final Context context, GraphSetting gs) {
super(gom, context, gs, R.layout.test_map);
Intent i = new Intent(contextOwn, PickLocationActivity.class);
act.startActivityForResult(i, 1);
//@Override
public void onActivityResult(final int requestCode, int resultCode, Intent data) {
//super.onActivityResult(requestCode, resultCode, data);
Log.e("State", "This won't start.");
}
}
활성 PickLocationActivity 올바르게 시작 및 제 클래스 I 첫번째 클래스 결과를 얻을 필요
는 클래스 I (1)이있다. onActivityResult 메서드는 @Override가 될 수 없으며 주석을 달면 메서드가 사용되지 않습니다. 그것에 대해 무엇을 할 수 있습니까? 내 응용 프로그램에서 제대로 작동하고 act.startActivityForResult 있지만 startActivityForResult 사용할 필요가 없습니다.
내가 어떻게 든 "act"를 onActivityResult 메서드와 연결할 필요가 있다고 생각하지만 어떻게해야할지 모르겠다. 어떤 제안이라도 도움이 될 것입니다!
클래스 2 :
public class PickLocationActivity extends AppCompatActivity{
...
Intent intent = new Intent();
intent.putExtra("Location Address", predictions.getPlaces().get(position).getPlaceDesc());
intent.putExtra("placeID", predictions.getPlaces().get(position).getPlaceID());
setResult(CUSTOM_AUTOCOMPLETE_REQUEST_CODE, intent);
finish();
}
저는 실제로 act = (Activity) 컨텍스트와 같은 값을 할당합니다. 나는 G_map 클래스에서 그 일을하고 있기 때문에 startActivityResult를 호출하는 활동에서 onActivityResult()를 재정의해야한다는 것을 어떻게 알지 못한다. –
@RobinPopelka :'G_map'은 그렇지 않다. 'Activity', 그리고 그것은'startActivityForResult()'를 호출하는 활동이 아닙니다. 'act' 필드 뒤에있는 자바 클래스는 onActivityResult()를 구현하는 클래스 여야합니다. – CommonsWare
CommonsWare에게 감사드립니다. 문제가 발견되었습니다. :) –