
안녕하세요. 안드로이드 커스텀 리스트뷰 드래그/드롭 구현을 하려고 합니다.
예제소스를 보면서 하나씩 구현 중인데요..
크게 두개의 클래스로 나뉘어있습니다.
하나는 메인액티비티 이고, 다른 하나는 listview를 상속받는 클래스입니다.
앱의 전체 레이아웃이라거나 기능, 리스트뷰,어댑터,어레이어댑터 생성및 사용은 main에서 하고있고,
mylistview 클래스에서 드래그/드롭이 어떤식으로 이루어 지나 분석하고있습니다.
현재 버튼을 하나씩 누를 때마다 동적으로 listview에 row가 1개씩 추가 됩니다.
이 동적으로 추가된 row를 롱클릭 했을 때 움직이게 하고싶은데 mylistview 부분을 보면
onitemlongclickListener가 있습니다. 여기서 롱클릭을 감지하여 기능을 수행하는 것 같은데,..
동적으로 추가된 row에 항상 포함되어있는 특정버튼을 누르면 롱클릭의 기능을 수행하도록 하고싶습니다.
getview내부에선 가능할 것 같은데, mylistview 클래스에서 그 특정버튼의 click 을 감지할 수는 없는
것인지요..?
-mylistview-
public class mylistview extends ListView {
setOnItemLongClickListener(mOnItemLongClickListener);
private AdapterView.OnItemLongClickListener mOnItemLongClickListener = new AdapterView.OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int pos,
long id)
{
Log.e("OnItemLongClickListener","OnItemLongClickListener");
~그외의 기능~
return true;
}
};