有些时候需要在一个listview或者gridview等里面的子view设置一个tag,来确定点击的是哪个view
通常是在adapter 的getview里面返回
比如说在一个叫做tv的textview里设置,这时候就要注意
TextView tv
public View getView(int arg0, View arg1, ViewGroup arg2) {
tv=(TextView)`````````````````````
}
和
public View getView(int arg0, View arg1, ViewGroup arg2) {
TextView t tv=(TextView)`````````````````````
}
这两种写法是不同的,因为settag是根据栈来设定了,不是根据堆,所以第一种写法是错误的,因为无论运行多少次getview返回多少次view,但是栈里面还是只有一个tv引用,变量名,那么tag就没有意义了
在不用settag的情况下,还是推荐第一种写法,因为频繁创造栈对象是消耗内存的