2014-07-21 37 views
0

您好,我正在使用演示應用程序,我正在使用listview和自定義適配器。我想這樣做,當我滾動列表時,當你的位置爲2或3,那麼該行應該在屏幕頂部意味着前一行應該完全隱藏。如何將第二行的列表視圖滾動到屏幕頂部

例子中,我在第一行第一次開始滾動列表視圖,然後來到第二時getview電話與當時的位置2列表應只在屏幕上排2的展現。我如何實現這一目標?請協助。

當我滾動時看到屏幕截圖,當我甚至移動到第2行時出現兩行,然後第一行也出現,直到我手動向上移動列表。

enter image description here

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    if(convertView == null) { 
     LayoutInflater mInflator = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     convertView = mInflator.inflate(R.layout.home_list_item, parent, false); 
    } 

    TextView mChapterContent = (TextView) convertView.findViewById(R.id.contentTextView); 

    // get the data from verse instance 
    Verse verse = rowItem.get(position); 

    // setting the content 
    mChapterContent.setText(Html.fromHtml("<html><body style=\"text-align:justify\">" + verse.getText() + "</body></html>")); 



    return convertView; 
} 

在此先感謝。

回答

0

可以使用ListViewsetSelection功能,滾動到一個特定的項目列表如下...

listView.setSelection(2) 

或者,如果你想它的動畫......

listView.smoothScrollToPosition(2) 

這個答案引用自answer

+0

在哪裏我應該寫在'getView'這個代碼? –

+0

嗯,我可能會對你想要達到的目標感到困惑。你只是想滾動到你的'ListView'中的特定項目?或者做更復雜的事情? – Brian

+0

我試過這個,但是這並不是將我的列表滾動到屏幕頂部\t當我來到第2行mListView.setSelection(position); –

相關問題