私は現在、2行のテキストを保持する単純なリストビューアダプターを持っています。私が次にしようとしているのは、ユーザーがリストビューで撮影した写真を表示するオプションを追加することです。その後、私はいつものようにハッシュマップに追加し、アダプタをリフレッシュAndroid - ユーザーが撮影した写真をリストビューに追加する
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;
}
}
ただし、問題が発生しています。ビットマップ形式の写真がリストビューに追加されていません。空白の空白として表示されます。私はここで何か間違っていますか?第2に、ユーザが写真を撮らないことを決定した場合、画像ビューは表示されるべきではない。私はどのようにこれを実装するか分からない。カスタムリストアダプタを作成する必要がありますか?あなたの助け
はたぶん、絵の大きさに問題があり、あなたは多分、サムネイルに画像を変換しようとしなければなりません。 –
画像からサムネイルを作成して追加してもまだ表示されない – Splitusa
sdcardで画像にアクセスするときは、this.getExternalStorageDirectory()+ pathToImageを使用してアクセスし、/ sdcard /では直接アクセスしないでください。 また、マニフェストファイルの外部ストレージに読み書き可能なアクセス権があることを確認する必要があります。エラーコードやログキャストを提供できる場合は、ここで関連性があります実際はコードをテストすることはできません。 –