今天突然意识到view中的tag是个好东东。可以用setTag()向里面存储数据,可以用getTag()取出之前存放的数据。例如:
ImageView image = new ImageView(this);image.setTag("I am data!");
如果要存放多条数据怎么办呢?别急,还可以这样用:
PopupWindow p = new PopupWindow();anchor.setTag(p);image.setTag(R.id.screenFlag, anchor);image.setOnClickListener(previewListener);
在其他地方就可以这样取:
OnClickListener previewListener = new OnClickListener() { @Override public void onClick(View v) { View fView = (View) v.getTag(R.id.screenFlag); PopupWindow p = (PopupWindow) fView.getTag(); if (null != p) { ((PopupWindow) fView.getTag()).dismiss(); } } };
还有什么不能放的?