diaryListview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
View dialogView;
dialogView = inflater.inflate(R.layout.diary_dialog,container);
AlertDialog.Builder dlg = new AlertDialog.Builder(getActivity());
dlg.setTitle("사용자 정보 입력");
dlg.setView(dialogView);
sqlDB = diaryDB.getReadableDatabase();
dlgTitle = (TextView)dialogView.findViewById(R.id.dlgTitle);
dlgDiary = (TextView)dialogView.findViewById(R.id.dlgDiary);
dlgImg = (ImageView) dialogView.findViewById(R.id.dlgimg);
String title = diaryArrayList.get(position).getFood_text();
android.util.Log.i("서비스",textPath + title + ".txt");
String diary = readDiary(textPath + title + ".txt");
dlgTitle.setText(title);
dlgDiary.setText(diary);
Bitmap bitmap = BitmapFactory.decodeFile
(diaryArrayList.get(position).getFood_image()); // 경로의 파일을 bitmap으로 생성
dlgImg.setImageBitmap(bitmap);
sqlDB.close();
android.util.Log.i("서비스","닫기 앞");
dlg.setNegativeButton("닫기",null);
android.util.Log.i("서비스","닫기 통과");
dlg.show();
android.util.Log.i("서비스","닫기 통과");
}
});
오류나오는 부분 코드입니다. 글자수 제한때문에 잘랐습니다. 오류가 나는 부분이 리스트뷰를 클릭시 다이얼로그를 띄워서 보여주려 하는 dlg.show()부분입니다. 오류 내용은 다음과 같습니다.
java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
removeView를 dialogView에 적용해보니 프래그먼트 자체가 이상해져서 어떻게 해결해야할지 모르겠습니다.. 과제로 만들어보는 프로그램이라 미숙한점 양해 부탁드립니다