2012-07-05 3 views
0

공용 클래스를 통해 메서드 집합을 제공하는 라이브러리가 포함 된 응용 프로그램이 있습니다. 내부적으로,이 라이브러리는 응용 프로그램이 전달한 컨텍스트를 사용합니다.컨텍스트 클래스에 startActivityWIthResult 메서드가없는 이유는 무엇입니까?

질문 : 라이브러리의 공용 클래스가 Activity를 확장하지 않으므로 메서드는 응용 프로그램에서 전달 된 Context 개체를 사용합니다. 이 경우 결과/데이터를 응용 프로그램에 다시 전달하는 방법은 무엇입니까? 컨텍스트 개체에는 startActivityWithResult() 메서드가 없습니다.

아이디어가 있으십니까?

답변

1

startActivityWithResult() 액티비티와 같은 메서드는 없습니다. 메서드는 startActivityForResult()입니다.

컨텍스트가 Activity 참조 인 경우 해당 클래스에 startActivityForResult() 메서드를 사용할 수 있습니다. 단지, 내가 java.lang.ClassCastException가 점점 오전 정보를 원하시면, 같은

((Activity)context).startActivityForResult();

+0

감사를 사용 android.app.Application는 android.app.Activity에서 캐스트 할 수없는, 아무것도 여기 놓친 거지? – Manohar

+0

예, 답에서 언급했듯이 컨텍스트는 Application 클래스가 아닌 Activity 클래스의 참조 여야합니다. – user370305

관련 문제