2013-10-06 3 views
0

, как получить все изображения в MySQL для андроид на самом деле я могу получить данные, такие как (имена, возраст, ....) , но на самом деле я не могу извлечь все образы , тогда I есть таблица в MySQL содержит (имя, возраст, изображение)как поместить данные изображения в формате JSON в ListView

спасибо за любое руководство и любую помощь

+0

В каком формате изображение хранится в mysql (двоичный или путь к изображению)? –

+0

@dianuj это varchar (100) –

+0

снова прочитайте мой вопрос –

ответ

0

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

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

EDIT

Как я понял, вы отправляете данные на Android устройства с помощью Json. Итак, давайте предположим, что вы посылаете массив JSON как это:

[{"username":"John", "userimage":"http://example.com/images/imagejohn.jpg"}, 
{"username":"Michael", "userimage":"http://example.com/images/imagemike.jpg"}, 
{"username":"Sophia", "userimage":"http://example.com/images/imagesophia.jpg"}] 

Так что вам нужно, чтобы прочитать содержимое JSON в массив и заполнить его в адаптер. Как я уже упоминал в комментариях, вы должны посмотреть на ответ здесь: https://stackoverflow.com/a/8113337/1991053

В принципе, вы можете прочитать массив JSON и поместить его в адаптер массива ListView, в приведенном выше примере, вы можете получить каждый элемент, например это:

JSONArray jsonArray = new JSONArray(input) // input is the JSON string you recieve 
for(int i = 0; i < jsonArray.length(); i++) { 
    String userName = jsonArray.optJSONObject(i).getString("username"); 
    String imageURL = jsonArray.optJSONObject(i).getString("userimage"); 
    // Here you can do whatever you want with the values 
    // like loading an imageview with the url's data 
    // or putting the values in an ArrayList for filling up the ListView adapter 
} 

конечно, вы можете редактировать этот вписываться в любой структуре JSON используется для отправки данных, просто используйте JSONObjects и JSONArray для этого. Посмотрите документацию здесь: JSONArray, JSONObject

Если вы хотите получить больше контроля над данными в формате JSON (например, сериализации или десериализации данных), посмотрите на Jackson или Gson. Есть много примеров, чтобы понять, как они работают.

Но я думаю, что лучше всего использовать приведенный адаптер Here. Кроме того, для загрузки изображений в ListView из URL-адреса вы можете использовать эту библиотеку: Lazy List.

Надеюсь, это поможет вам начать. С наилучшими пожеланиями.

+0

Pnikosis действительно я создал API, который является php и android , когда кто-то загружает некоторый статус на php-часть, которая является веб-сайтом Я хочу показать уведомление о android part поэтому мои таблицы должны быть на localhost –

+0

О, извините, я думаю, что неправильно понял вопрос, вы имеете в виду внешнюю базу данных mysql? Итак, он уведомляет Android-устройство, отправив изображение и другие данные? – Pnikosis

+0

:) да, ты прав Я хочу посмотреть, кто опубликовал (имя и образ) на моем устройстве Android легко получить имя, но изображение не могу :( –

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