android-在GridView视图中设立水平滚动的图像布局
android-在GridView视图中设置水平滚动的图像布局
原问题来自于CSDN问答频道,更多解决方案见:http://ask.csdn.net/questions/373
原问题描述:
我想以gridview的视图显示图像缩略图,要求这些图像排成一列以水平滚动条的形式显示。我设置了很多参数,但是检查不出哪里出错了。显示出来的图像根本不是按照原计划显示的。
解决方案:
import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; public class Test2Activity extends Activity { /** Called when the activity is first created. */ public Integer[] imageIDs = { R.drawable.library, R.drawable.library, R.drawable.library, R.drawable.library, R.drawable.library, R.drawable.library, R.drawable.library }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); GridView gridView = (GridView) findViewById(R.id.grid); gridView.setAdapter(new ImageAdapter(this, imageIDs)); gridView.setNumColumns(imageIDs.length); } class ImageAdapter extends BaseAdapter { private Context context; Integer[] imageIDs; public ImageAdapter(Context c, Integer[] imageIDResults) { context = c; imageIDs = imageIDResults; } public int getCount() { return imageIDs.length; } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView == null) { imageView = new ImageView(context); imageView.setLayoutParams(new GridView.LayoutParams(100, 100)); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); } else { imageView = (ImageView) convertView; } imageView.setImageResource(imageIDs[position]); return imageView; } } }