我正在尝试实现自定义 listview ,但是存在调用 getview 方法等于设备屏幕上存在的 listitems 的问题,当我滚动列表时,对于剩余的项目,调用 gitview 方法,并更改以前的列表项被丢弃..我希望在开始时为列表视图中存在的所有项目调用 getview 方法。
请帮我...
我正在尝试实现自定义 listview ,但是存在调用 getview 方法等于设备屏幕上存在的 listitems 的问题,当我滚动列表时,对于剩余的项目,调用 gitview 方法,并更改以前的列表项被丢弃..我希望在开始时为列表视图中存在的所有项目调用 getview 方法。
请帮我...
在 getview 中试试这个
RelativeLayout yourlayout= (RelativeLayout) v.findViewById(R.id.content);
yourlayout.setOnTouchListener(new OnTouchListener()
{
boolean isOnClick=true;
public boolean onTouch(View arg0, MotionEvent arg1)
{
if(arg1.getAction()==MotionEvent.ACTION_MOVE)
{
isOnClick = false;
}
else if(arg1.getAction()==MotionEvent.ACTION_UP)
{
if(!isOnClick)
{
x_up = (int) arg1.getX();
y_up = (int) arg1.getY();
Log.v("log","x up : "+x_up +" and y :"+y_up);
// showToast("x up : "+x_up +" and y :"+y_up);
Log.v("log","difference is "+ (x_up-x_down));
if(x_up-x_down>50)
{
delete.setVisibility(View.VISIBLE);
}
else if(x_down-x_up>50)
{
delete.setVisibility(View.VISIBLE);
}
isOnClick = true;
}
else
{
isOnClick = true;
Log.v("log", "clicekd");
if(delete.getVisibility()==View.VISIBLE)
{
delete.setVisibility(View.INVISIBLE);
}
else
{
Intent i = new Intent(MyaLikeActivity.this,ProfileActivity.class);
i.putExtra("userid", listitem.getUserId());
startActivity(i);
}
}
}
else if(arg1.getAction()==MotionEvent.ACTION_DOWN)
{
x_down = (int) arg1.getX();
y_down = (int) arg1.getY();
Log.v("log","x down : "+x_down +" and y :"+y_down);
}
return true;
}
});
通过使用此...删除按钮在您从左向右或从右向左滑动时可见..如果删除按钮可见,则可以设置您的 oncliclick 列表器..