캘린더를 표시하는 앱을 만들고 하루에 클릭하면 ListView
사용자 정의를 표시하고 싶습니다.내 코드가 OnCreate에서 작동하지만 OnItemClickListener에서 작동하지 않는 이유
내 문제는 내가 OnCreate
코드를 사용할 때 작동하지만 캘린더의 OnItemClickListener
에서 사용했을 때 아무 것도하지 않는다는 것입니다.
여기 내 코드입니다. 나는 작업을 감사하고 내가 응용 프로그램을 실행할 때 묻는다면, 나는리스트 뷰의 findViewById를 할
for(int i = 0; i < 5; i++) {
RowItem item = new RowItem(imagesCharacter[i], imagesAnime[i], characters[i], animes[i]);
rowItems.add(item);
}
CustomListViewAdapter myAdapter = new CustomListViewAdapter(getApplicationContext(), R.layout.list_item, rowItems);
listView.setAdapter(myAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,
View view, int position, long id) {
// TODO Auto-generated method stub
Toast toast = Toast.makeText(getApplicationContext(),
"Item" + (position + 1) + ": " + rowItems.get(position), Toast.LENGTH_LONG);
toast.setGravity(Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, 0);
toast.show();
}
});
도움이됩니다.
해결 방법 :
문제점을 발견했으며 현재 작동합니다.
문제는 ListView가 LineViewLayout의 자식이었고 findViewById를 수행했을 때 항상 또는 Null이 발생했거나 작동하지 않는 것이 었습니다.
그래서 레이아웃을 삭제하고 내 findViewById가 작동했습니다.
모든 해답을 제공해 주셔서 감사합니다.
그냥이 라인 toast.setGravity (Gravity.BOTTOM을 제거 | 중력 .CENTER_HORIZONTAL, 0, 0); 다시 시도하십시오. – Piyush