Я разрабатываю приложение и хотел бы повторно использовать действия, которые похожи, чтобы не копировать практически идентичный код. Давайте представим, у меня есть 4 вида деятельности: - MainActivity - Task1Activity - Task2Activity - MenuActivityДействия повторного использования Android в разных частях приложения
Task1Activity или Task2Activity действительно похожи, поэтому я хочу, чтобы создать только один вид деятельности под названием TaskActivity и передать некоторые данные через Intent для управления в пределах TaskActivity - другое поведение. Для упрощения можно считать, что разница будет только потоком навигации. Навигационный поток Я хотел бы осуществить это:
MainActivity < -> MenuActivity < -> Task1Activity
or
MainActivity < -> Task2Activity
Если я могу повторно использовать TaskActivity в 2 разных местах в моем навигационном потоке я бы:
ГлавнаяActivity < -> МенюАктивность < -> TaskActivity
or
MainActivity < -> 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>
В определении TaskActivity выше, я урожай, чтобы сказать, какой будет моя активность PARENT_ACTIVITY. Но родительская активность для этого примера может быть MenuActivity или MainActivity. Как я могу определить свою TaskActivity, не указав, какова будет родительская активность? Если есть способ сделать это, следует ли ожидать каких-либо проблем при нажатии кнопки «Назад» на Android?
Спасибо, Carlos
Если я это сделаю, может ли Android правильно управлять навигацией? –
Если да, для чего это определение PARENT_ACTIVITY? –
Отвечая на вопрос, мне не нужно включать PARENT_ACTIVITY, я просто не хочу снимать это определение, не зная, для чего это и какое влияние оно может вызвать. Вот почему я задаюсь вопросом, не нужно ли это, зачем кому-либо добавлять метаданные для PARENT_ACTIVITY? –