如何从长按时不在列表视图中的文本视图集合中选择多个文本视图



我在LinearLayout中收集了textViews,我希望它们在长按时选择。我尝试了这段代码,但它不起作用...

textView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
// TODO Auto-generated method stub
textView.setSelected(true);
selected = 1;
return false;
}
});
textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(selected == 1){
if(textView.getSelected())
textView.setSelected(false);
else
textView.setSelected(true);
}
}
});

我试图搜索setOnLongPressListener但没有找到类似的东西。 请向我建议我想要的操作的任何方法。

我假设您想在长按选择时突出显示文本视图。试试这个:

textView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
boolean selected = !view.isSelected();
view.setSelected(selected);
view.setBackgroundColor(selected ? Color.RED : Color.TRANSPARENT);
return true;
}
});

您必须在 xml 文件中的 TextView可单击属性中输入true

<TextView
android:clickable="true"/>

问候。

在 setOnLongClickListener(( 中将返回类型false更改为 true。

如果您返回 false,它会同时触发 setOnLongClickListener(( 和 setOnClickListener(( 方法。所以这可能是问题所在。

您可以在LongClick上将背景的颜色更改为不同。

最新更新