|
android fragments
|
|||
---|---|---|---|
#18+
всем привет давайте обсудим :) вот конкретно не могу понять смысл существования фрагментов. вроде бы декларируется простое построение сложных интерфейсов, но все тоже самое легко делается на LinearLayout с weightSum/layout_weight + include + ViewFlipper ну у фрагмента есть сохранение состояния, мне пока не понадобилось ни разу. кто юзает фрагменты? почему? что стало лучше и проще, чем на просто вью? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 10:10 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321кто юзает фрагменты? почему? что стало лучше и проще, чем на просто вью? фрагмент это некоторый обособленный кусочек интерфейса и логики или мини-activity внутри основной activity. отсюда основная польза фрагментов (и почему их придумали) - возможность их переиспользования в разных частях приложения. особенно это полезно при поддержке смартфонов и таблетов в одном приложении. простейший пример master-detail. в лейауте смартфона у тебя есть фрагмент список (мастер) - при клике открываем фрагмент с информацией по элементу (деталь). на таблете мы кладем их рядышком слева направо абсолютно ничего не меняя ни в логике ни в разметке (нам нужна только еще одна разметка, где они рядом). или на том же таблете - горизонтально они лежат рядом, вертикально - как на смартфоне. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:02 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321, http://habrahabr.ru/post/113196/ ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:12 |
|
android fragments
|
|||
---|---|---|---|
#18+
chpashaЮрий321кто юзает фрагменты? почему? что стало лучше и проще, чем на просто вью? > фрагмент это некоторый обособленный кусочек интерфейса и логики или мини-activity внутри основной activity. это понял > отсюда основная польза фрагментов (и почему их придумали) - возможность их переиспользования в разных частях приложения. можно же юзать xml include? > особенно это полезно при поддержке смартфонов и таблетов в одном приложении. простейший пример master-detail. в лейауте > смартфона у тебя есть фрагмент список (мастер) - при клике открываем фрагмент с информацией по элементу (деталь). на > таблете мы кладем их рядышком слева направо абсолютно ничего не меняя ни в логике ни в разметке (нам нужна только еще одна > разметка, где они рядом). или на том же таблете - горизонтально они лежат рядом, вертикально - как на смартфоне. именно эта задача совсем просто делается в linearlayout, где можно в процентах менять ширину столбца (строки) на ходу. или view из выбраного столбца делать видимым/невидимым. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:21 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321видимым/невидимым. на какое событие? там же не видимость, а клик и вывод в отдельное "окно" imho ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:32 |
|
android fragments
|
|||
---|---|---|---|
#18+
Petro123Юрий321видимым/невидимым. на какое событие? там же не видимость, а клик и вывод в отдельное "окно" imho на онклик по листвью например ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:33 |
|
android fragments
|
|||
---|---|---|---|
#18+
мне кажется я понял идею - меньше кода, больше хмля. видимо это и имеют ввиду, когда пишут про легкую реюзабельность. остальное вода. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:39 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321мне кажется я понял идею - меньше кода, больше хмля. видимо это и имеют ввиду, когда пишут про легкую реюзабельность. остальное вода. блин, да один хрен надо разбирать, какая сейчас ориентация и выписывать код про фрагменты ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:43 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321именно эта задача совсем просто делается в linearlayout, где можно в процентах менять ширину столбца (строки) на ходу. или view из выбраного столбца делать видимым/невидимым.эвона как. кто бы мог подумать. P.S. ты нифига не понял. пока не реализуешь так и эдак - не дойдет. а потом я попрошу тебя ту же самую деталь с ее логикой отобразить еще в одном месте приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:47 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321блин, да один хрен надо разбирать, какая сейчас ориентация и выписывать код про фрагменты не надо. помедитируй над ключевыми словами layout-land, layout-sw600dp, layout-sw600dp-land-v11 и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:50 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321, я думаю, в конечном итоге движутся вот к этому: - уменьшай границы ослика сайта ниже. Увидишь как контент подстраивается по размеры. http://www.bostonglobe.com/ ЗЫ. На данном этапе технологий это не так просто для программиста.... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 12:51 |
|
android fragments
|
|||
---|---|---|---|
#18+
chpashaЮрий321именно эта задача совсем просто делается в linearlayout, где можно в процентах менять ширину столбца (строки) на ходу. или view из выбраного столбца делать видимым/невидимым. эвона как. кто бы мог подумать. P.S. ты нифига не понял. пока не реализуешь так и эдак - не дойдет. если бы понял, я бы и не спрашивал :) chpasha а потом я попрошу тебя ту же самую деталь с ее логикой отобразить еще в одном месте приложения. include, нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 13:02 |
|
android fragments
|
|||
---|---|---|---|
#18+
Юрий321если бы понял, я бы и не спрашивал :) ну так я и объяснил. фрагмент это не только гуй, это еще логика + lifecycle. для того чтобы покрыть вышеописанный сценарий с master-details нам нужно 2 фрагмента, в них логика списка и детали причем в каждом своя, т.е. списку не надо всей той байды, что нужна в детали и наоборот. после этого мы делаем Код: xml 1. 2. 3. 4. 5.
и вот у нас уже на разную ориентацию есть два разных поведения без единой строчки кода. при этом ни лист ни вьюха, ни тем более активность в которой они живут не заморачиваются видимостями, переключениями между вьюхами, ориентациями и прочим. а если у нас еще где-то есть другая активность, но в ней нужно точно ту же detail показать (ну например мы редактируем элемент и нам нужно preview перед сохранением) - то вообще профит. Юрий321chpasha а потом я попрошу тебя ту же самую деталь с ее логикой отобразить еще в одном месте приложения. include, нет?это ты только разметку всунешь, а ведь там еще байндинг данных, валидация какая-то возможно, вызов диалогов/активностей и обработка результатов. чтоб было понятней, для реализации подобного без фрагмента тебе нужен компонент - т.е. класс с некоей логикой подгружающий еще по ходу дела гуй. а include он полезен, но он чисто для комбинирования кусочков интерфейса. без логики. на это весь упор - фрагмент это маленький, но полностью автономный кубик конструктора, который будет одинаково функционировать в любом месте приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2013, 13:47 |
|
|
start [/forum/topic.php?fid=13&fpage=29&tid=1331793]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 409ms |
0 / 0 |