2010年1月6日星期三

getView() 和 convertView

網格視圖(GridView)例子中, 我們從擴展BaseAdapter創建了一個新類, ImageAdapter. 然後重寫了一些方法, 包括: getCount(), getItem(), getItemId(), getView()和構造器ImageAdapter(). 其中, getCount(), getItem(), getItemId()和構造器ImageAdapter()都比較直接, 容易理解. 而getView()就是真正返回一個自定義視圖的方法. 這是一個需要產生自定義視圖的做法.

當中, 以下代碼是創建一個新的View.

imageView = new ImageView(context);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);


但是,當(convertView!=null)時, 便沒有必要重新創建, 重用舊的(即是convertView)便可以; 這可以大大減少程序運行的時間.



沒有留言:

發佈留言