#android #android-activity #code-reuse #android-framelayout
#Android #android-активность #повторное использование кода #android-framelayout
Вопрос:
Я не уверен, что это правильный способ сделать это. У меня есть ChatActivity
использование FrameLayout
в frame.xml . Это действие необходимо повторно использовать в 5 действиях. Есть ли возможность повторно использовать код? Это действие выполняется независимо от других действий.
Например, в действии A, которое использует main.xml , Я хочу ChatActivity
и frame.xml быть включенным. Каков наилучший способ добиться этого, кроме объединения ChatActivity
и frame.xml в действие А и main.xml ? Объединение действий будет означать, что мне придется копировать и вставлять коды 5 раз в разные действия. Я не уверен, что это правильный путь…
Ответ №1:
Вы не можете «включить» an Activity
в другое Activity
. Поскольку у вас Activity
есть базовая функциональность, которую используют все ваши другие Activities
пользователи, вы могли бы Activities
расширить эту базовую Activity
функциональность.
Лучшим способом для вас было бы использовать Fragments
библиотеку совместимости.
Что касается макетов, вы можете использовать их повторно и импортировать в свой текущий макет с помощью include
.
Надеюсь, это поможет!
Ответ №2:
Используйте фрагменты. вы можете создать один фрагмент и использовать его во всех действиях. Фрагменты имеют свой собственный вид. Посмотрите на следующую ссылку для фрагмента.
http://developer.android.com/guide/topics/fundamentals/fragments.html
вы можете использовать фрагменты до версии 3.0, включив библиотеку совместимости.
http://android-developers.blogspot.com/2011/03/fragments-for-all.html
Ответ №3:
На Android вы можете повторно использовать XML-файлы, используя тег include, например
<include layout="@layout/okcancelbar_button" android:id="@ id/okcancelbar_ok"/>
Чтобы поделиться функциями действия с другими действиями, создайте базовое действие с общими функциями и сделайте другие действия расширенными из него.