Как внедрявате фиксиран ляв панел за оформление на таблет с Android?

Пренасям приложение за iPhone+iPad към Android. Той използва Split View Controller за таблети, което на езика на Android ви позволява да представяте две дейности една до друга едновременно (Редактиране: Android позволява само една дейност на екрана, както е споменато от @commonsware по-долу. Следващото най-добро нещо е да използвате фрагменти, но Лентата за действие може да съществува само на ниво активност, което означава, че ще трябва да разшири цялата ширина на екрана. Чудя се дали разделен контролер за активност ще дойде на платформата Android.)

Пейзажното оформление на таблета има фиксиран ляв панел за статистика, която никога не се променя. Десният панел функционира точно като телефонната версия на приложението. Преходите се извършват изключително в десния панел. т.е. целият екран не се плъзга при смяна на дейности, а само десният панел. Как бихте препоръчали прилагането на това в Android?

Трябва ли да използвам една дейност и ръчно да извършвам преходи между фрагменти в десния панел? Това приложение има 25 екрана и ще има алтернативно оформление за телефони, така че се опитвам да планирам предварително и да направя това правилно първия път :) Благодаря за помощта!

Екранна снимка на оформлението на таблета


person bgolson    schedule 09.04.2013    source източник


Отговори (1)


Той използва Split View Controller за таблети, който на езика на Android ви позволява да представяте две дейности една до друга едновременно.

Не. В "Android lingo" не можете да "представите две дейности една до друга едновременно". Можете можете да представите два фрагмента един до друг едновременно.

Как бихте препоръчали прилагането на това в Android?

Използвайте фрагменти. Използвайте FragmentTransaction, за да замените десния фрагмент, ако е необходимо въз основа на въвеждане от потребителя. Цялостното ви оформление на дейност може да има хоризонтален LinearLayoutandroid:layout_weight за контролиране на размерите за лявата и дясната страна), с <fragment> елемент за лявата и FrameLayout за дясната.

Трябва ли да използвам една дейност и ръчно да извършвам преходи между фрагменти в десния панел?

Да, за да постигнете това, което искате.

person CommonsWare    schedule 09.04.2013
comment
Благодаря Марк! Ще мога ли да поставя лентата за действие (actionbarsherlock) само върху правилния фрагмент? - person bgolson; 09.04.2013
comment
@bgolson: Ще мога ли да сложа лентата за действие (actionbarsherlock) само на правилния фрагмент? -- не, съжалявам. Лентата с действия е за цялата дейност. Можете да накарате правилния фрагмент да допринесе за лентата с действия, по отношение на елементите за действие, и тези елементи ще идват и си отиват, докато фрагментите идват и си отиват, но самата лента е за цялата дейност. - person CommonsWare; 09.04.2013
comment
Добре, Сладко, мога да живея с това. Като странична бележка, търся да взема хартиено копие на вашата книга, The Busy Coder's Guide to Android Development и се чудех как да съм сигурен, че получавам най-новата версия. Последната версия с дата на Amazon, която виждам, е 12 октомври 2011 г. Благодаря ви отново за помощта! - person bgolson; 09.04.2013
comment
@bgolson: Съжалявам, но тази книга вече не се предлага в печатни издания, а само в цифрова форма от моя уеб сайт. - person CommonsWare; 09.04.2013