setSelection(row),就表示焦点落在第row行。请问此时会把第row行置顶吗?什么可以决定置顶还是不置顶?现在遇到的情况是,同样的两段代码,都用到setSelection(row),但是一个效果是当前焦点行被置顶,另外一个确不置顶。代码上没有看出有什么不同?不知道哪里出问题了。

解决方案 »

  1.   

    会置顶,但如果ListView里面只有一屏的话,就是第一条记录置顶。以上是正常情况,非正常情况只能看代码,无码无真相。
      

  2.   

    灵活变通,例如,想让当前记录不置顶,显示在第2行位置的话,那就setSelection(row-1);想显示在第3行的话就setSelection(row-2);
      

  3.   


    我的意思是,现在的情况是,setSelection哪行,哪行就置顶。它自己刷新数据。比如我setSelection(4),其实我想要的效果是光标在第4行上,显示1,2,3,4,5,6行。但结果是现在是它自己把第4行的数据置顶,光标也在最上面一行,显示的是4,5,6,7,8,9。
      

  4.   

    setSelection(4-3);这样不就是你要的效果了?至于你想把4的这一行明显一点的话,把字体改个颜色或者改个背景色。