1

我刚刚复制完画廊的 android 演练 (http://developer.android.com/resources/tutorials/views/hello-gallery.html),想知道如何将缩略图照片缩放成onClickItem 方法中较大的一个。

        public void onItemClick(AdapterView parent, View v, int position, long id) {
            Toast.makeText(ProjectPreview.this, "" + position, Toast.LENGTH_SHORT).show();
        }

目前它只显示 Toast 中描述的位置。有人可以指出我正确的方向或告诉我一个简单的方法吗?

提前致谢。

编辑:添加了这个方法并在 onItemClick 中调用它,发送它的位置。它有效。

    public void showLarger(int position){
        ImageView image = (ImageView) findViewById(R.id.iv1);
        image.setLayoutParams(new Gallery.LayoutParams(200, 100));
        image.setScaleType(ImageView.ScaleType.FIT_XY);
        image.setImageResource(mImageIds[position]);
    }
4

3 回答 3

0

使用具有包含图像视图的布局的对话框,并将其源案例设置为您拥有的位置和您想要的大小。

于 2012-04-16T15:50:30.190 回答
0

我会使用一个对话框。您可以创建一个新的活动并在其布局中有一个 ImageView,并将该活动伪装成一个对话框。请参阅此问题以了解如何执行所有操作:Android Image Dialog/Popup

于 2012-04-16T15:54:15.853 回答
0

如上所述,您可以使用 Dialog 来显示更大的图像,或者您可以触发一个启动常规 Activity 的意图(如果您按照上述说明进行操作,则必须将对话框主题添加到您的 Activity)。

您必须执行诸如调用 v.getItemID(position) 之类的操作并将其存储在字符串中,然后将其传递给您的下一个活动。

无论哪种方式,您都必须将一些数据传递给将托管 ImageView 的 Activty,然后使用该数据(路径、uri 等)来膨胀更大的 ImageView。如果您想使用 Dialog 路由,请不要忘记将主题添加到清单中。

于 2012-04-16T16:27:46.107 回答