我使用最新更新的支持库创建了底部工作表。基本上,只要长时间点击回收站视图中的项目,就会显示底部工作表(包含包含列表视图的线性布局)。但是每当我点击listview中的项目时都不会发生任何事情。我添加了吐司,当我点击表单项目时,它永远不会被触发。有任何想法吗?提前致谢!ListView OnItemClickListener不在底部工作表中触发
这里是ListView控件初始化方法:
public void initSheet() {
bottomSheet = findViewById(R.id.list_sheet);
ListAdapter adapter = new ListAdapter(this, R.layout.custom_sheet_row, getSheetInfo(), "Sheet");
list = (ListView) findViewById(R.id.list_sheet_list);
list.setAdapter(adapter);
behavior = BottomSheetBehavior.from(bottomSheet);
behavior.setHideable(true);
}
这里是recyclerview长按:
@Override
public void onLongClick(View view, int position) {
final String itemText = ((TextView) view.findViewById(R.id.textRow)).getText().toString();
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(ListActivity.this, "sdjakfjs", Toast.LENGTH_SHORT).show();
switch (position) {
case 0:
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(Intent.EXTRA_TEXT, itemText);
startActivity(Intent.createChooser(sharingIntent, "Share the item"));
break;
case 1:
final ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
clipboard.setPrimaryClip(ClipData.newPlainText("New", itemText));
break;
case 2:
editText(itemText, position);
break;
case 3:
listAdapter.deleteItem(position);
break;
}
behavior.setState(BottomSheetBehavior.STATE_HIDDEN);
}
});
behavior.setState(BottomSheetBehavior.STATE_EXPANDED);
}
请确定您使用的是什么,列表视图或回收站视图。你的代码是列表视图,在某些地方你使用回收视图 – theLazyFinder
就像我在op中说过的,我有一个recyclerview作为主应用,但在底部列表中有一个列表视图 –