ListView最適化のViewType使用

5619 ワード

回転元:http://www.cnblogs.com/avenwu/archive/2013/04/09/3010462.html
 
ListViewの最適化にはViewHolderを用いることができ,convertView,public View getView(int position,View convertView,ViewGroup parent)を多重化し,
ListViewは、各itemのレイアウトが同じではない場合があります.たとえば、次のようになります.
ListView优化之ViewType使用_第1张图片
ああ、この時にconvertViewが入ってくるとうまく働かないし、解決策は、View Typeで複数の異なるView多重化を実現できる.
        public View getView(int position, View convertView, ViewGroup parent) {
        // loading view
if (getItemViewType(position) == VIEW_TYPE_LOADING) { if (convertView == null) { convertView = getLayoutInflater(null).inflate( R.layout.list_item_stream_status, parent, false); }           //...return convertView; } else {
        //data view Activity activity
= (Activity) getItem(position); if (convertView == null) { convertView = getLayoutInflater(null).inflate( R.layout.list_item_stream_activity, parent, false); }           //... return convertView; } }

 
 
作成者:
テキスト
出典:
http://www.cnblogs.com/avenwu/