我需要创建像三星联系人列表
一样的ListView
。我需要在该行被滑动
时显示该行的自定义布局。并且还需要在该行的背景中显示联系方式。请给我一些想法或引用。
谢谢。
list.setOnItemClickListener(stationSelectionListener);
final ListSwipeDetector listSwipeDetector=new ListSwipeDetector();
list.setOnTouchListener(listSwipeDetector);
new UserAndMessageCount(StationListActivity.this).execute();
list.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (listSwipeDetector.swipeDetected()){
Toast.makeText(StationListActivity.this,"sWIPE1",Toast.LENGTH_LONG).show();
LayoutInflater inflater=(LayoutInflater)getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View viewNew=inflater.inflate(R.layout.view_flow_common_page, null);
view=viewNew;
}
else {
ConstantValues.STATION_NAME=((TextView)view.findViewById(R.id.textView)).getText().toString();
LayoutInflater inflater=(LayoutInflater)getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View viewNew=inflater.inflate(R.layout.view_flow_common_page, null);
//startActivity(new Intent(getApplicationContext(), StationSelectionActivity.class));
}
}
});
list.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> parent, View view,int position, long id) {
if (listSwipeDetector.swipeDetected()){
Toast.makeText(StationListActivity.this,"sWIPE3",Toast.LENGTH_LONG).show();
} else {
Toast.makeText(StationListActivity.this,"sWIPE4",Toast.LENGTH_LONG).show();
}
return false;
}
});
最佳答案
在onItemClickListener
内,您可以实现 onItemClick (AdapterView<?> parent, View view, int position, long id)
。如果您检索view
,当用户单击该项目时,您可以对其进行所需的更改。
对于刷卡,您可以修改适配器的 getItem()
函数并添加 GestureListener
或类似this code 。然后您可以监听滑动并采取相应的行动。
关于android - 如何使用 ListView 的 onitemclicklistener 更改仅选定 ListView 行的布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14746349/