Каковы различия между активностью и фрагментом
согласно моим исследованиям, существует значительная разница в концепции backstack и как они существуют:
деятельность::
когда
activityрасположенный наbackstackofactivitiesпользователь
можно вернуться к предыдущему действию, просто нажавback
кнопка.Activityможет существовать самостоятельно.
фрагмент::
когда
fragmentпомещается в действие, которое мы должны запросить
экземпляр, который будет сохранен путем вызоваaddToBackstack()во времяfragment
transaction.Fragmentдолжен жить внутриactivity
есть ли другие различия ?
7 ответов:
Это две совершенно разные вещи:
Activity-это компонент приложения, который предоставляет экран, с которым пользователи могут взаимодействовать, чтобы что-то сделать. Новые подробности: http://developer.android.com/guide/components/activities.html
в то время как фрагмент представляет собой поведение или часть пользовательского интерфейса в действии. http://developer.android.com/guide/components/fragments.html
фрагмент является частью деятельности, которая вносит свой собственный пользовательский интерфейс для этой деятельности. Фрагмент можно рассматривать как суб активности, где как полный экран, с которым взаимодействует пользователь называется деятельностью. Действие может содержать несколько фрагментов. Фрагмент в основном является частью деятельности.
действие может содержать 0 или несколько фрагментов в зависимости от размера экрана. Фрагмент может быть повторно использован в нескольких действиях, поэтому он действует как многоразовый компонент в деятельности.
фрагмент не может существовать самостоятельно. Она всегда должна быть частью деятельности, тогда как деятельность может существовать без какого-либо фрагмента в ней.
согласно документации разработчика android, разница между фрагментом и активностью в их жизненном цикле.
Doc link http://developer.android.com/guide/components/fragments.html#Lifecycle
наиболее существенная разница в жизненном цикле между активностью и фрагментом заключается в том, как он хранится в соответствующем заднем стеке. По умолчанию действие помещается в задний стек действий, управляемых системой при его остановке (чтобы пользователь мог вернуться к нему с помощью кнопки Назад, как описано в разделе задачи и задний стек). Однако фрагмент помещается в задний стек, управляемый действием узла, только когда вы явно запрашиваете сохранение экземпляра путем вызова addToBackStack () во время транзакции, которая удаляет фрагмент.
в противном случае управление жизненным циклом фрагмента очень похоже на управление жизненным циклом действия. Таким образом, те же методы для управления жизненным циклом деятельности также применить к фрагментам. Однако вам также нужно понять, как жизнь деятельности влияет на жизнь фрагмента.
& для нескольких макетов панели вы должны использовать
fragmentЧто вы не можете достичь сactivity.
Activity-это пользовательский интерфейс приложения, с помощью которого пользователь может взаимодействовать и Фрагмент является часть деятельности,это подвид деятельности внутри деятельности который имеет свой собственный жизненный цикл, который проходит параллельно жизненному циклу деятельности.
Activity LifeCycle Fragment LifeCycle onCreate() onAttach() | | onStart()______onRestart() onCreate() | | | onResume() | onCreateView() | | | onPause() | onActivityCreated() | | | onStop()__________| onStart() | | onDestroy() onResume() | onPause() | onStop() | onDestroyView() | onDestroy() | onDetach()
основные различия между
ActivityиFragment
- Activity-это компонент приложения, который дает пользовательский интерфейс, где пользователь может интерект. Фрагмент является частью деятельности,которая вносит свой собственный пользовательский интерфейс для этого деятельность.
- для планшета или если мобильный телефон находится в ландшафте, то с помощью фрагмента мы можем показать два списка, как список onle для показа имя состояния и другой список покажет описание состояния в одной деятельности, но с помощью деятельности мы не можем сделать то же самое вещь.
- активность не зависит от фрагмента.но Фрагмент зависит от активности,он не может существовать независимо.
- без использования фрагмента в действии мы не можем создать многопанельный пользовательский интерфейс.но используя несколько фрагментов в одном действии, мы можем создать многопанельный пользовательский интерфейс.
- если мы создаем проект, используя только деятельность, то его трудно управлять, но если мы используем фрагменты, то структура проекта будет хорошей, и мы можем справиться легко.
- мероприятие может содержат 0 или несколько фрагментов. Фрагмент может быть повторно используется в нескольких видах деятельности, таким образом, его действие как многоразовый компонент в деятельности.
- деятельность имеет собственный жизненный цикл, но фрагмент имеет там собственный жизненный цикл.
- для активности мы должны упомянуть в Манифесте но для фрагмента его нет требуемый.
активность
1. Деятельность является одним из основных строительных блоков приложений на платформе Android. Они служат точкой входа для взаимодействия пользователя с приложением и также имеют центральное значение для того, как пользователь перемещается в приложении или между приложениями
2. Методы жизненного цикла размещаются в ОС.
3. жизненный цикл активностифрагментов
1. Фрагмент представляет поведение или часть пользовательского интерфейса в Деятельность. Вы можете объединить несколько фрагментов в одном действии, чтобы построить многопанельный пользовательский интерфейс и повторно использовать фрагмент в нескольких действиях. Фрагмент можно рассматривать как модульный раздел действия, который имеет свой собственный жизненный цикл, получает свои собственные входные события и который можно добавлять или удалять во время выполнения действия.
2. Методы жизненного цикла размещаются по размещаются по хостинг активность.
3. жизненный цикл фрагмента
точка входа в Android-приложение является активность. Деятельность представляет собой экран и предоставляет пользователю интерфейс и поведение для обработки входных событий. Запрос в виде намерения отправляется, чтобы начать любую деятельность в приложении, то есть приложения для android имеют несколько точек входа. Система Android считывает конфигурацию о действиях и создает их экземпляры, когда делается запрос на действия. Системные вызовы методов обратного вызова, которые позволяют реализовать определенное поведение в разных точках в жизненном цикле деятельности.
фрагментов С другой стороны, не может быть запущен путем отправки запроса в систему. Они являются частью деятельности. Фрагменты позволяют разбить действие на более мелкие компоненты, чтобы вы могли повторно использовать их, и с помощью фрагментов вы можете реализовать задачу с потоком нескольких подзадач только с одним действием. Фрагмент имеет жизненный цикл, с помощью которого вы можете реализовать поведение, когда фрагмент находится в разных состояниях его жизненный цикл.
Comments