사용자 정의보기 myView
을 라이브러리로 개발합니다. 내보기 구성 요소의 메서드에서 비디오 재생 활동을 발사 : 나는 재생이 끝날 때 알아야 할onActivityResult를 재정의 할 수 없을 때 하위 활동이 완료되었는지 확인하는 방법
Intent intent = new Intent(android.content.Intent.ACTION_VIEW);
Uri uri = Uri.parse(uriPath);
intent.setDataAndType(uri, "video/mp4");
myView.getContext().startActivity(intent);
. 나는 startActivityForResult
를 사용하고 난 단지가 아닌 컨텍스트가 사용됩니다 내보기에 액세스 할 수 있기 때문에 활동의 onActivityResult
를 재정의 할 수 없습니다 -
myView.getContext()
그래서 내가 래퍼로서 내 자신의 활동 PlayVideoActivity
를 만들었습니다. itsefl
Intent intent = new Intent(mAdView.getContext(), PlayVideoActivity.class);
intent.putExtra(PlayVideoActivity.EXTRAS_URI, uriPath);
mAdView.getContext().startActivity(intent);
PlayVideoActivity
활동 : 함께 화재
public class PlayVideoActivity extends Activity {
public static final String EXTRAS_URI = "uri";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String uriString = getIntent().getExtras().getString(EXTRAS_URI);
Intent intent = new Intent(android.content.Intent.ACTION_VIEW);
Uri uri = Uri.parse(uriString);
intent.setDataAndType(uri, "video/mp4");
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
finish();
}
}
PlayVideoActivity.onActivityResult
가있는 "배치"나는 비디오 재생이 완료 알고 있지만 내가 여기에서 myView
에 액세스 할 수 없습니다. AFAIK 다른 활동에 개체 참조를 전달할 수 없습니다.
이 시점에서 myView
의 메소드를 호출 할 수있는 방법이 있습니까?