안드로이드 개발 질문/답변
(글 수 45,052)
DB 에 있는 내용을 Simplecursoradapter 를 이용하여 필요한 부분만 ListView 에 넣어주었습니다.
이때 리스트뷰에 표기할 내용은 레이아웃은 schdedule.xml 에 새로 만들었습니다. schedule.xml 에 이미지를 넣고 버튼 처럼 사용하기 위해서 android:clickable="true" 로 하면된다길래 해주었습니다.
리스트뷰 클릭도 되고 이미지 클릭해서 다른것도 보여주고 싶어서 일단은 list.setOnItemClickListener(mItemClickListener);
를 넣어주어 클릭해서 원하는 내용이 나오게 했습니다.
그런데 이미지는 클릭이 안되고 클릭해도 에러가 나고 그렇습니다.
어떻게 해야 이미지 클릭할수 있는지요? 도와주세요~
- SimpleCursorAdapter 이용해서 DB 내용 리스트뷰에 보여주기 -
ScheduleDB mHelper;
Cursor cursor;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.scheduleview);
mHelper = new ScheduleDB(this);
SQLiteDatabase db = mHelper.getWritableDatabase();
cursor = db.rawQuery("SELECT * FROM aaa", null);
startManagingCursor(cursor);
SimpleCursorAdapter Adapter = null;
Adapter = new SimpleCursorAdapter(this,
R.layout.schedule,
cursor, new String[] { "_id", "aMonth", "aDay", "dWeek", "result" },
new int[] { R.id.index, R.id.testmonth, R.id.testday, R.id.testweek, R.id.resultdate});
ListView list = (ListView)findViewById(R.id.slist);
list.setAdapter(Adapter);
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
list.setOnItemClickListener(mItemClickListener);
}- 이미지 클릭해서 내용 보여주기 위한 리스너 - 이부분이 안됩니다.
AdapterView.OnItemClickListener mItemClickListener =
new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView parent, View view, int position, long id){
ImageView img = (ImageView)view.findViewById(R.id.addbtn);
img.setClickable(true);
img.setOnClickListener(new ImageView.OnClickListener(){
public void onClick(View v){
TextView index = (TextView)v.findViewById(R.id.index);
String str=null;
str = index.getText().toString();
Toast.makeText(Schedule_view.this, str, Toast.LENGTH_SHORT).show();
}
});
}
};


