当前位置:操作系统 > 安卓/Android >>

android-在GridView视图中设置水平滚动的图像布局

原问题描述:
我想以gridview的视图显示图像缩略图,要求这些图像排成一列以水平滚动条的形式显示。我设置了很多参数,但是检查不出哪里出错了。显示出来的图像根本不是按照原计划显示的。
解决方案:
[java]  
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)  
        {     www.zzzyk.com
            ImageView imageView;  
            if (convertView == null) {  
                imageView = new ImageView(context);  
                imageView.setLayoutParams(new GridView.LayoutParams(100, 100));  
                imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);  
            } else {   www.zzzyk.com
                imageView = (ImageView) convertView;  
            }  
            imageView.setImageResource(imageIDs[position]);  
            return imageView;  
        }  
    }  
}  
 
 
补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,