简体   繁体   English

为什么我的 imageview clicklistener 的 getTag 总是返回 0?

[英]Why does getTag return always 0 for my imageview clicklistener?

So far I have implemented a button that on every click inflates a new imageView now I'm trying to assign a tag to each imageView but in my case is returning always 0. This is my code:到目前为止,我已经实现了一个按钮,每次点击都会膨胀一个新的 imageView 现在我正在尝试为每个 imageView 分配一个标签,但在我的情况下总是返回 0。这是我的代码:

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    }

public void addImage(View view){

    for (int i = 0; i < 1; i++) {


        final LinearLayout linearLayout = (LinearLayout) findViewById(R.id.mylinear);
        ImageView imageView = new ImageView(MainActivity.this);
        imageView.setLayoutParams(new LinearLayout.LayoutParams(140, 84));
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        Bitmap icon = BitmapFactory.decodeResource(MainActivity.this.getResources(),
                R.drawable.text);
        imageView.setImageBitmap(icon);

        imageView.setTag(i);


        imageView.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                ImageView iv = (ImageView)v;
                Toast.makeText(getBaseContext(), v.getTag().toString(), Toast.LENGTH_SHORT).show();

            }
        });
        linearLayout.addView(imageView);

    }

}
}

I finally realized that the loop wasn't needed, instead I used:我终于意识到不需要循环,而是使用:

int num = linearLayout.getChildCount();
            imageView.setTag(num++);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM