在新活动

时间:2015-06-27 23:59:10

标签: java android gridview

我尝试制作一般的gridview和分类gridview,从分类gridview尝试在新活动中打开点击的图像。

问题是在分类网格视图中点击项目时它不会打开新的活动

第二个gridview“分类”:

     holder.tv = (TextView) row.findViewById(R.id.textView1);
        holder.img = (ImageView) row.findViewById(R.id.imageView1);

        holder.tv.setText(Bresult[position]);
        holder.img.setImageResource(BimageId[position]);

        if (row == null) {
            row = new ImageView(Bcontext);
        }
        row.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Bcontext, BActivity.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                if (position==0){
                    intent.putExtra("imageID", position);
                    Bcontext.startActivity(intent);
                }
                Toast.makeText(Bcontext, "You Clicked " + Bresult[position], Toast.LENGTH_LONG).show();

            }
        });

        return row;
    }
}

这个New Activity应该出现在那里:

    Intent intent = getIntent();
    BCustomAdapter imageAdapter = new BirthCustomAdapter(this);
    Bundle bdl = getIntent().getExtras();
    int index = bdl.getInt("imageID");
    ImageView image = (ImageView) findViewById(R.id.img_view);
    image.setImageResource(index);
}

1 个答案:

答案 0 :(得分:0)

        Intent intent = new Intent(Bcontext, BActivity.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (position==0){
            intent.putExtra("imageID", position);
            Bcontext.startActivity(intent);
        }

您的startActivity() if语句,因此只有当位置== 0时才会启动您的活动。

也许你真的是这个意思:

        Intent intent = new Intent(Bcontext, BActivity.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (position==0){
            intent.putExtra("imageID", position);
        }
        Bcontext.startActivity(intent);