2015-06-26 1 views
0

Привет Это мой код ..Показать изображение вместо строки с помощью простого адаптера андроида

.... 
public void QuerySQL(String SQL) { 

    try { 

     Statement statement = connect.createStatement(); 
     rs = statement.executeQuery(SQL); 
     List<Map<String, String>> data = null; 
     data = new ArrayList<Map<String,String>>(); 

     while(rs.next()) { 
      Map<String, String> datanum = new HashMap<String, String>(); 
      datanum.put("A", rs.getString("RoomNumber")); 
      datanum.put("B", rs.getString("RoomStatus")); 
      datanum.put("C", rs.getString("RoomType")); 
      data.add(datanum); 
     } 
     String[] from = {"A","B","C"}; 
     int[] views = {R.id.txt_number,R.id.status,R.id.txt_type}; 
     ADAhere = new SimpleAdapter(this, data, R.layout.layout_list_item, from, views); 
     listViewStats.setAdapter(ADAhere); 
    } catch (Exception e) { 
     Toast.makeText(Main.this, e.getMessage().toString(),Toast.LENGTH_LONG).show(); 
    } 
} 
.... 

Это андроид проект, получить строку из базы данных SQL Server. Все уже работает нормально. Дело в том, что я хочу поместить изображение вместо строки. И изображение уже находится в папке проекта hdpi.

Например, «RoomStatus» в базе данных имеет 4 типа. Чистый, грязный, занятый, закрытый. Мне нужно получить изображение из вытачиваемого hdpi R.drawable.clean, R.drawable.dirty, R.drawable.occupied, R.drawable.closed. Но я не понимаю, как помещать изображение на основе строки из базы данных. Любая помощь, которую я действительно оценю. Thx заранее

+0

Эй, ты пытался создать свой собственный адаптер? Я бы рекомендовал начать здесь: https://developer.android.com/training/material/lists-cards.html –

+0

Я уже пытаюсь создать простой адаптер, но только со строкой. Так что сейчас я собираюсь попробовать картину. Но я не знаю, как разместить картинку на основе строки, которую я получаю из базы данных. – lalalala

ответ

0

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

И для динамического извлечения вводимого коэффициента вы можете использовать этот link

+0

Хорошо, я получил то, что имею в виду. Но он использует числа. Тогда попробуй его с именами чисел. Спасибо – lalalala