2013-07-23 4 views
2

응용 프로그램을 개발 중이며 거의 동일한 코드를 복제하지 않기 위해 비슷한 활동을 다시 사용하고 싶습니다. 의 내가 4 개 활동이 상상하자 - MainActivity - Task1Activity - Task2Activity - 을 MenuActivity응용 프로그램의 여러 부분에서 Android 재사용 활동

Task1Activity 또는 Task2Activity 그래서 나는 TaskActivity라는 하나 개의 활동을 만들어 내에서 제어 할 의도로 일부 데이터를 전달하려면 정말 비슷

TaskActivity 다른 동작. 단순화를 위해 차이점은 탐색 흐름 일뿐입니다. 내가 구현하고자하는 탐색 흐름은 다음과 같습니다

MainActivity < -> MenuActivity < -> Task1Activity

    or 

MainActivity < -> Task2Activity

나는 2 개 개의 다른 장소에서 TaskActivity를 재사용 할 수있는 경우 내 탐색 흐름에서 다음과 같이 나타납니다.

MainActivity < -> MenuActivity < -> TaskActivity MainActivity <

    or 

-> TaskActivity

문제는 내가 내 매니페스트 파일에 TaskActivity를 정의 할 때 내가 좋아하는 뭔가를 추가 할 필요가 있다는 것입니다 : 위의 TaskActivity 정의하는 동안

<activity 
     android:name="br.com.example.TaskActivity" 
     android:label="Just an example" 
     android:launchMode="singleTask" 
     android:configChanges="orientation" 
     android:parentActivityName="br.com.example.MainActivity" > 
     <meta-data 
      android:name="android.support.PARENT_ACTIVITY" 
      android:value="br.com.example.MainActivity" /> 
    </activity> 

을, I 내 PARENT_ACTIVITY가 될 활동이 무엇인지 알 수 없습니다. 그러나이 예제의 부모 작업은 MenuActivity 또는 MainActivity가 될 수 있습니다. 부모 작업을 지정하지 않고 TaskActivity를 정의하려면 어떻게해야합니까? 할 수있는 방법이 있다면 Android에서 뒤로 버튼을 누르면 문제가 발생합니까?

감사합니다, 카를로스

답변

3

왜 매니페스트에서 PARENT_ACTIVITY에 대한 메타 데이터를 포함해야합니까? 당신이하는 일에 대한 제한이 있습니까? PARENT_ACTIVITY에 대한 메타 데이터없이 AndroidManifest에서 활동을 선언 할 수 있으므로 문제가 해결됩니다.

+1

내가 그렇게하면 Android가 탐색을 제대로 처리 할 수 ​​있습니까? –

+1

그렇다면이 PARENT_ACTIVITY 정의는 무엇입니까? –

+0

질문에 답할 때 PARENT_ACTIVITY를 포함 할 필요가 없습니다.이 정의가 무엇인지, 그리고 그 영향에 대해 알지 못하면이 정의를 사용하지 않으려 고합니다. 그래서 필자는 PARENT_ACTIVITY에 대한 메타 데이터를 추가하는 것이 필요한 이유가 무엇인지 궁금합니다. –

1

약간의 연구 끝에 PARENT_ACTIVITY가 최신 Android 버전의 UP 버튼에 사용됨을 발견했습니다. 위험을 감수하고 싶지 않고 최신 안드로이드 버전을 테스트 할 방법이 없기 때문에 모든 활동에 대해 PARENT_ACTIVITY를 MainActivity로 사용하기로 결정했습니다. 코드 재사용을 위해 나는 유산을 사용할 것이다.

+0

문화 유산이란 무엇입니까? – Ehsan

관련 문제