我的Activity中有2个listviews(比如list1和list2),其中包含相同的元素,但list1的高度很小,一次只显示1个项目,list2大小为match_parent并显示每个项目。当我在列表中添加任何元素时,它会同时添加两个列表视图。
我想要做的是,我想让我的list1每次都不可滚动,当我点击list2的任何项目时,list1应该抓住该位置并滚动直到该项目。
我使用了以下代码,但即使在制作list1
之后也是如此setScrollContainer(false);
它仍然使我的listview可滚动。但是,
smoothScrollToPosition(true);
工作正常。
ListView list1= (ListView) findViewById(R.id.inflated_ll);
list1.setAdapter(adapter);
list1.setVisibility(View.VISIBLE);
list1.setScrollContainer(false);
adapter.notifyDataSetChanged();
scanAdapter = new ScanItemAdapter();
ListView list2= (ListView) findViewById(R.id.inflated_ll2);
list2.setAdapter(scanAdapter);
scanAdapter.notifyDataSetChanged();
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int posi,long pos) {
ListView list1= (ListView) findViewById(R.id.inflated_ll);
list1.setScrollContainer(true);
list1.smoothScrollToPosition(posi);
list1.setScrollContainer(false);
}
});