2013-03-06 2 views
2

Я разрабатываю новостное приложение.Listview При нажатии

На главной странице я получаю новости с сервера, используя JSON.

Я помещаю название этого нового в список вместе с миниатюрным изображением. Основной текст новостей (который может быть более 15 строк) здесь не отображается.

Где я хочу, чтобы он появился, когда пользователь нажимает на заголовок в определенной строке в ListView, пользователь переходит в новое действие, где отображается большее изображение, наряду с заголовком и текстом Новости.

Мой вопрос следующий. - Какой подход лучше?

1 - получение всех данных в первом списке и отправка их как дополнительных на вторую страницу? (моя забота о том, что jsons иногда могут быть слишком длинными) и показать их там?

2 - просто введите заголовок в первом списке и получите другую ссылку для большого текста (и изображений), затем, когда пользователь нажимает на новости, открывает другое действие и повторно публикует/получает данные на этот раз с новой ссылкой.

Любые другие предложения приветствуются.

+0

Это зависит от того, сколько у вас предметов. 100? 1000? 1000000? Вы хотите, чтобы ваше приложение работало в автономном режиме, как только пользователь извлек данные? – caiocpricci2

+0

@gameower, я бы сказал, что максимум 100 в одном списке. Нет, приложение не будет работать в автономном режиме, если пользователь извлечет данные. Но я знаю, что получение всех дает возможность работать в автономном режиме, как только это было сделано, но не в этом случае. – tony9099

ответ

3

Я предпочел бы второй вариант. Потому что пользователь может не интересоваться всеми новостями. Практически пользователь будет читать только несколько новостей. Скажем 4 или 5. Если вы сделаете второй вариант, вы будете получать только эти 4 или 5 данных. Вы загружаете все доступные данные сразу, будет потреблять большой трафик данных и время для загрузки списка.

+0

Karthik Palanivelu, поэтому каждый json может иметь с собой (один из столбцов массива) другую ссылку, в которой присутствуют большие данные. Это оптимальный способ сделать это? или есть другие методы? – tony9099

+3

Я предполагаю, что вы храните свои новости в db и вытаскиваете их с помощью запроса Http. Ответ http будет строкой JSON. Итак, я бы выбрал уникальный идентификатор, как первичный ключ, прикрепленный к каждой новости. Таким образом, при запуске активности списка приложение выполнит первоначальный HTTP-запрос, и сервер ответит массивом JSON с уникальным идентификатором, изображением и заголовком. При нажатии любого элемента списка приложение сделает другой HTTP-запрос с уникальным идентификатором параметра, сервер отправит большой текст и большое изображение. –

+0

Karthik Palaniveli, да, хороший подход.спасибо за ваши идеи. – tony9099

1

Грубо, если вы не хотите, чтобы ваше приложение работало в автономном режиме @ Karthik Palanivelu является правильным, и вы должны запрашивать дополнительные данные только в том случае, если пользователь хочет его прочитать.

Если вы это сделаете, это действительно зависит от количества элементов вашего списка и того, насколько вы заботитесь о трафике данных. Если у вас 1000 предметов, 15 строк, скажем, 100 символов в строке. Это примерно 1,5 Мб. Может быть много, если пользователь использует мобильные данные, но также может быть немного, если пользователь находится на Wi-Fi. Я лично хотел бы предоставить пользователю возможность всегда просматривать приложение в автономном режиме, поэтому в этом случае я бы сразу получил весь текст. (Или, по крайней мере, некоторые из вариантов, возможно, последние 100 или около того. Но это мое личное мнение)

Имейте в виду, что это только текст, вы не должны получать все большие изображения, или он будет потреблять много. В настоящее время многие люди используют мобильные данные, поэтому вы всегда должны стараться сохранить потребление данных как минимум, а также дать пользователю приятный опыт.

+0

gameower, я согласен с вами. Спасибо за небольшие вычисления. Что вы рекомендуете относительно фотографий? Я подумываю о том, чтобы показывать только одно приложение на новости с небольшими размерами, скажем 150x150 и качество мобильных/веб-сайтов. – tony9099

+0

Для 100 предметов я не считаю, что вам нужно так оптимизировать. 150x150 кажется достаточно хорошим и всегда пытается использовать jpegs вместо pngs, поскольку они меньше. Но опять же, если вашему приложению не нужно работать в автономном режиме, я верю, что @ Karthik Palanivelu просто дал вам лучший ответ! – caiocpricci2

Смежные вопросы