如何在网格视图中显示新的屏幕onclick图像事件?

时间:2010-12-31 07:35:49

标签: android

我在网格视图中显示了图像.. 但是无法通过单击图像连接到另一个屏幕..

3 个答案:

答案 0 :(得分:2)

我假设您使用ImageView来展示您的图片。您可以使用ImageView.setOnClickListener(View.OnClickListener l)方法,就像使用按钮一样。在听众中,您可以像平常一样开始新的活动 - 像startActivity(new Intent(YourCurrentActivity.this, YourTargetActivity.class));一样。

您也可能会发现this info有用。

答案 1 :(得分:2)

HI,

你在gridView中有图像想要在新活动中打开它。为此采取这样的图像适配器: -

 imagegrid = (GridView) findViewById(R.id.ImageGrid);
    imagegrid.setAdapter(new ImageAdapter());       
    imagegrid.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) {

             String imageId = (String)parent.getAdapter().getItem(position).toString();
             Intent intent = new Intent(getApplicationContext(), ThemanPurchase.class);
             intent.putExtra("com.ui.SampleActivity", imageId);
             startActivity(intent);                               
        }
    });

希望你明白了。在另一个Activity中检索你的图像是这样的: -

in = null;
    try {
        in = new java.net.URL(url).openStream();
    } catch (MalformedURLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    bmp = BitmapFactory.decodeStream(new PatchInputStream(in));
    ImageView iv = (ImageView)findViewById(R.id.icon);
    iv.setScaleType(ImageView.ScaleType.FIT_CENTER);
    iv.setImageBitmap(bmp);  

试试这个它会运行。

答案 2 :(得分:0)

我猜你的问题与我的问题相同,试试这个问题很有效。

        GridView g = (GridView) findViewById(R.id.myGrid);
        g.setAdapter(new GridGallery(this));

        g.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> parent, View v, int position, long id) {

                setContentView(R.layout.gallery);
                pager = (ViewPager) findViewById(R.id.gallery_view);
                pager.setAdapter(myPagerAdapter);
                pager.setCurrentItem(position);

                isGalleryVisible = true;
            }
        });