Android ApiDemos示例解析(122):Views->Grid->2. Photo Grid

本例和上例非常類似,ImageAdapter 的getView 也是使用的ImageView ,隻是數據源為資源文件中的一組照片。

[java]
public View getView(int position, View convertView, 
 ViewGroup parent) { 
 ImageView imageView; 
 if (convertView == null) { 
 imageView = new ImageView(mContext); 
 imageView.setLayoutParams(new GridView.LayoutParams(45, 45)); 
 imageView.setAdjustViewBounds(false); 
 imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
 imageView.setPadding(8, 8, 8, 8); 
 } else { 
 imageView = (ImageView) convertView; 
 } 
 
 imageView.setImageResource(mThumbIds[position]); 
 
 return imageView; 

public View getView(int position, View convertView,
 ViewGroup parent) {
 ImageView imageView;
 if (convertView == null) {
 imageView = new ImageView(mContext);
 imageView.setLayoutParams(new GridView.LayoutParams(45, 45));
 imageView.setAdjustViewBounds(false);
 imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
 imageView.setPadding(8, 8, 8, 8);
 } else {
 imageView = (ImageView) convertView;
 }

 imageView.setImageResource(mThumbIds[position]);

 return imageView;
}
如果有需要的話,可以自定義一個View的Layout ,比如含有一個ImageView,下面再來一個TextView,然後在ImageAdapter 的getView 展開這個layout ,將ImageView 設成照片,TextView設成照片名稱。此時GridView還是以網格顯示,但此時每個網格或即顯示照片,而在照片下方顯示照片名稱,類似App Launcher.

 

 作者:mapdigit
 

發佈留言