是否有可能实现这一目标? 例如:我们有listView有20个项目,每个项目都有一些文本。用户想要从项目1中选择一半结束文本,并选择另一项项目文本的一半(与webView或可选textView中相同的行为)。有人想过这个功能吗?我应该在哪里搜索解决方案?
将在找到解决方案时更新此主题。
PS。我知道你会说"首先向我们展示代码"。我还没有。
答案 0 :(得分:1)
在项目列表视图中点击这样的监听器代码
lv.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3)
{
// TODO Auto-generated method stub
TextView tv;
String text_from_tv, finalText;
tv= (TextView) view.findViewById(R.id.textview_id);
text_from_tv = tv.getText();
if(!firstPartSelected)
finalText += text_from_tv.substring(0,text_from_tv.length()/2);
else
finalText += text_from_tv.substring(text_from_tv.length()/2,text_from_tv.length());
//Save this finalText String to any string array and use those values
}
});
并且该字符串数组包含所选单词的后半部分,如果有用的话可以投票给答案!!
答案 1 :(得分:0)
在列表视图的list_item.xml中。您需要为同一项目设置android:textIsSelectable="true"
并设置android:clickable="true"
。
答案 2 :(得分:0)
我不会给出任何代码,我会怎么做:
boolean firstPartSelected false;
String finalText ="";
// ListView Definition
// OnItemClickListener
OnItemClick(...){
if(!firstPartSelected)
finalText += TextFromItem.substring(0,TextFromItem.length()/2)
else
finalText += TextFromItem.substring(TextFromItem.length()/2,TextFromItem.length())
}
这不是一些真正的代码,只是一个如何实现它的想法。那是你想要的吗?
答案 3 :(得分:0)
尝试处理OnFocusChangeListener
EditText
,当焦点发生变化时,使用跨度(Android: Coloring part of a string using TextView.setText()?)在EditText
中选择文字颜色。如果您有大量的EditText
,则可以对每个view.setTag(etNumber)
使用(Integer)view.getTag()
和EditText
,并在循环中连接输出字符串时使用此信息(查找更多信息{{3 }})
P.S。 EditText
是[{1}}的继承人,您可以使用TextView
来处理TextView