我的问题是,我正在创建一个小测验,以便我想要一个顶部的图像和它下方的答案。这一切都是在一项新活动中完成的,我想在这里展示测验的答案。每个图像大约有40个问题。因此,我尝试使用HashMap如下: -
ListView lv = (ListView)findViewById(R.id.list1);
String[] from = new String[] {"ques","ans"};
int[] to = new int[] {R.id.ques, R.id.ans};
// prepare the list of all records
List<HashMap<String,Bitmap>> fillMaps = new ArrayList<HashMap<String,Bitmap>>();
Cursor c1 = db.getQues(4);
byte[] bb = c1.getBlob(0);
Bitmap image = BitmapFactory.decodeByteArray(bb, 0, bb.length);
//Cursor c2 = db.getAns(4);
// String ans1 ="Ans"+") "+c2.getString(0);
HashMap<String,Bitmap> map = new HashMap<String, Bitmap>();
// HashMap<String,String> map1 = new HashMap<String, String>();
map.put("ques",image);
// map1.put("ans",ans1);
fillMaps.add(map);
SimpleAdapter adapter = new SimpleAdapter(this, fillMaps, R.layout.itemsign, from, to);
lv.setAdapter(adapter);
但我找不到正确实施它的方法。此代码不起作用。它只显示一个空白页面。所以,任何帮助将不胜感激。因为我是android新手所以请在解释时更详细。
答案 0 :(得分:1)
好吧,我不认为blob是你的问题。这是SimpleAdapter
构造函数的javadoc:
public SimpleAdapter(Context context,List&gt; data,int resource,String [] from,int [] to)
自:API级别1 构造函数 参数
- context与此SimpleAdapter关联的View正在运行的上下文
- 数据地图列表。列表中的每个条目对应于列表中的一行。地图包含每行的数据,并应包括“from”
中指定的所有条目- 资源定义此列表项视图的视图布局的资源标识符。布局文件至少应包含“to”
中定义的命名视图- 来自将添加到与每个项目关联的地图的列名列表。
- to应在“from”参数中显示列的视图。 这些都应该是TextViews。此列表中的前N个视图将被赋予from参数中前N列的值。
你不能在Bitmap
中使用SimpleAdapter
,这太简单了:)