2011-07-27 8 views
2

Google+ Androidアプリからのストリームで上下にスクロールすると、現在表示されている投稿の縦のサイズに応じてスクロールバーのサイズが変わることに気付きました。 。たとえば、長い投稿にスクロールすると、バーのサイズが縮小し、短い投稿にスクロールすると長くなります。これはどのように実装されていますかGoogle+ Androidアプリでスクロールはどのように機能しますか?

私は特にこの機能は必要ありませんが、私の好奇心を刺激しているものです。

答えて

1

リサイクルの副作用ListViewです。新しい投稿がスクロールされて表示されると、アイテムの残りの部分が仮想化されます。つまり、リストの残りの部分がどれくらいのスペースを占めるかについてのAndroidの推測ですが、実際には表示されません。大きな投稿にスクロールすると、リストの残りの部分には大きな投稿があるとみなされ、したがってリストは長くなります。

あなたはそのようgetViewconvertViewパラメータを使用して同じ機能を得ることができます。

@Override 
public View getView(int position, View convertView, ViewGroup parent) 
{ 
    View view = null; 
    if(convertView == null) 
    { 
     view = // set your view here 
    } 
    else 
    { 
     view = convertView 
    } 
    // set all your properties on the view here. 
    return view; 
} 
関連する問題