Java Android ListView中心选择
我有一个列表视图,显示与搜索最接近的单词匹配 例如,如果我搜索“hi”,我会在ListView中得到以下结果Java Android ListView中心选择,java,android,Java,Android,我有一个列表视图,显示与搜索最接近的单词匹配 例如,如果我搜索“hi”,我会在ListView中得到以下结果 … 你好 你好,五个人 你好,五个人 高 突出显示 我正在使用 ListView.setSelection(wordList.indexOf(searchWord)); ListView.setSelected(true); 上面的代码将所选单词“hi”放在顶部,不会突出显示所选内容 我希望“hi”能够自动定位、选择并突出显示。 见下文 … 你好 你好 你好 你好,五个人 你好,五
…
你好
你好,五个人
你好,五个人
高
突出显示
我正在使用
ListView.setSelection(wordList.indexOf(searchWord));
ListView.setSelected(true);
上面的代码将所选单词“hi”放在顶部,不会突出显示所选内容
我希望“hi”能够自动定位、选择并突出显示。
见下文
…你好
你好
你好
你好,五个人
你好,五个人
我可以使用什么代码来实现上述功能 非常感谢。试试这个:
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
Toast.LENGTH_SHORT).show();
}
});
ListView lv=getListView();
lv.setTextFilterEnabled(真);
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
//单击后,显示带有文本视图文本的祝酒词
Toast.makeText(getApplicationContext(),((TextView)视图).getText(),
吐司。长度(短)。show();
}
});
有关更多信息:
试试
setSelectionFromTop()
你必须自己做数学题。setSelection()将所选项目置于视图顶部,这就是您看到的内容
ListView view = (ListView)findViewById(R.id.YourListView);
int height = view.getHeight();
int itemHeight = view.getChildAt(0).getHeight();
view.setSelectionFromTop(position, height/2 - itemHeight/2);
位置(int)是要在listview中居中的listitem 试试这个。 首先,获取listview的可见项计数
int count=0;
for (int i = 0; i <= listview.getLastVisiblePosition(); i++)
{
if (listview.getChildAt(i)!= null)
{
count++;
}
}
int count=0;
对于(inti=0;我也在寻找一种将列表视图居中的方法…你做到了吗?你能发布代码视图吗?getHeight()可以返回0
int target = position-count/2;
if (target<0) target = 0;
listview.setSelection(target);