<span style="font-size:18px;">今天需要做一个特效,点击条目,点击的条目跳转到屏幕中间位置,自己就写了一个代码,</span><p><span style="font-size:18px;">直接贴代码</span></p>convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int firstVisiblePosition = listview.getFirstVisiblePosition();
int lastVisiblePosition = listview.getLastVisiblePosition();
int i = (lastVisiblePosition - firstVisiblePosition) / 2;
if (position > i) {
listview.setSelection(position - i);
}
Toast.makeText(getApplicationContext(), position + " " + firstVisiblePosition + " " + lastVisiblePosition, Toast.LENGTH_LONG).show();
代码:
http://download.csdn.net/detail/sinat_28833211/9648875
github搞得有点混,就不贴地址了
--------------------------------------------------------------------------------------
跟新,上面的代码有点不友好,如果到底移动的太多了,就加了几个判断,还是贴上主要代码
int firstVisiblePosition = list_good_category.getFirstVisiblePosition();
int lastVisiblePosition = list_good_category.getLastVisiblePosition();
i = (lastVisiblePosition-firstVisiblePosition)/2;
goodCategoryAdapter.changedSelect(position);
if (position<lastVisiblePosition-2||position>firstVisiblePosition+2){
if (position > i) {
list_good_category.setSelection(i);
}else {
list_good_category.setSelection(position-3);
}
}
</pre><pre name="code" class="java">希望后面自己还有时间去完善,