В настоящее время у меня есть простой адаптер представления списка, который содержит две строки текста. Далее я пытаюсь добавить опцию отображения фотографии, сделанной пользователем, в виде списка. Я изменил свой список адаптеров так:
standardAdapter = new SimpleAdapter(this, list, R.layout.post_layout,
new String[] { "time", "post", "image"}, new int[] {
R.id.postTimeTextView, R.id.postTextView, R.id.post_imageView});
Затем я добавляю его в хэш-карту как обычно и обновляю адаптер:
// create a new hash map with the text from the post
feedPostMap = new HashMap<String, Object>();
feedPostMap.put("time", currentTimePost);
feedPostMap.put("post", post);
if(photoWasTaken == 1){
feedPostMap.put("image", pictureTaken);
}
//add map to list
list.add(feedPostMap);
// refresh the adapter
standardAdapter.notifyDataSetChanged();
Наконец, вот код активности по результату:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d(TAG, "ON activity for result- CAMERA");
if (resultCode == Activity.RESULT_OK) {
//get and decode the file
pictureTaken = BitmapFactory.decodeFile("/sdcard/livefeedrTemp.png");
//Display picture above the text box
imageViewShowPictureTaken.setImageBitmap(pictureTaken);
displayPhotoLayout.setVisibility(LinearLayout.VISIBLE);
//NEW - make photo variable = 1
photoWasTaken = 1;
}
}
Однако я столкнулся с проблемой. Фотография в растровом виде не добавляется в представление списка. Это просто выглядит как пустой пробел. Я что-то здесь не так делаю? Во-вторых, если пользователь решил не делать снимок, то изображение не должно отображаться. Я не уверен, как это реализовать. Должен ли я создать собственный адаптер списка?
Спасибо за вашу помощь