我有一个图片库,我正在尝试对其进行缩放。另外,它们工作正常。问题是,我无法终生将他们两个捆绑在一起!我试图将ImageAdapter中的ImageZoomView绑定无济于事。用户单击图像时我应该尝试这样做吗?还有其他想法吗?
这是ImageAdapter.class中返回Gallery元素的代码:

    public View getView(int position, View convertView, ViewGroup parent) {

    ImageView i = new ImageView(mContext);
    Bitmap bitmap = BitmapFactory.decodeResource(mContext.getResources(),mImageIds[position]);
    i.setLayoutParams(new Gallery.LayoutParams(300, 450));
    i.setScaleType(ImageView.ScaleType.FIT_XY);
    i.setBackgroundResource(mGalleryItemBackground);
    i.setImageBitmap(bitmap);
    return i;
}


这就是我在MainActivity.class中处理它的方式:

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.gallery);

        Gallery g = (Gallery) findViewById(R.id.gallery);
        g.setAdapter(new ImageAdapter(this));

        Log.i("blah","e ok");

        g.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
    //            mBitmap = ImageAdapter.mImageIds[position];



 //               mZoomView = (ImageZoomView)findViewById(R.id.zoomview);
 //               mZoomView.setZoomState(mZoomControl.getZoomState());
 //               mZoomView.setImage(mBitmap);


 //               Toast.makeText(MainActivity.this, "" + position, Toast.LENGTH_SHORT).show();
            }
        });


如您所见,我尝试了一些操作,但是我的应用始终崩溃。 :(这里的任何帮助将不胜感激。

最佳答案

您应该在ImageZoomView方法中创建getView,假定ImageZoomView是您自己的子类,该子类是ImageView小部件的子类。

08-18 19:24