在你BaseAdapter
覆蓋getView
,並得到每個孩子的引用,並設置onClickLister
爲他們每個人,每次getView
叫,採樣時間:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null){
convertView = inflater.inflate(R.layout.layout, parent,false);
}
final MyClass item = (MyClass)getItem(position);
View child1 = convertView.findViewById(R.id.child1);
child1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("tag", "child1 from item "+ position +" , is clicked.");
}
});
View child2 = convertView.findViewById(R.id.child2);
child2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("tag", "child2 from item "+ position +" , is clicked.");
}
});
return convertView;}
和刷卡,擴展您的LinearLayout
並覆蓋onInterceptTouchEvent
在其中,並將其傳遞給GestureDetector
並處理它。 有關GestureDetector
和Swipe的更多信息,請查看Google的GestureDetector
和SimpleOnGestureListener
樣本。
看看'onInterceptTouchEvent'方法。 – Luksprog
嗨。謝謝你的評論。這是否意味着我必須擴展'LinearLayout'並將其用作ListView行的容器? – jaibatrik
是的,因爲您需要重寫該方法+ onTouch方法。 – Luksprog