html5中文学习网

您的位置: 首页 > android » 正文

Android中的全局变量与局部变量使用小结_Android

[ ] 已经帮助:人解决问题

全局变量顾名思义就是在整个的类中或者可在多个函数中调用的变量。也称为外部变量。局部变量则是特定过程或函数中可以访问的变量。声明一个变量是很 容易的,但是讲到使用的时候,却不是想象的那样简单。至于本人则是经常定义全局变量使用,但也就是因为这样,定义的是全局变量。也饶了不少的弯子。bDpHTML5中文学习网 - HTML5先行者学习网

bDpHTML5中文学习网 - HTML5先行者学习网

在使用Adapter即适配器的时候,通常适配器总是与listView使用,因为一个listView 基本上都会有一个listView的Item的布局,下面的情景是:在每个Item里面都会有一个ImageView,当我点击某一条的时候,则需要为该 Item的ImageView换背景色或者换成别的背景图片,这个时候可能会出现的一种情况是  你明明点的第一条,你会发现第三条或者第二条的图片也变了。这就是因为你定义的是全局变量。代码部分如下:bDpHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
bDpHTML5中文学习网 - HTML5先行者学习网
public class  Adapter extends BaseAdapter {bDpHTML5中文学习网 - HTML5先行者学习网
private ImageView img;bDpHTML5中文学习网 - HTML5先行者学习网

public View getView(int position, View convertView, ViewGroup parent) {bDpHTML5中文学习网 - HTML5先行者学习网
convertView = mInflater.inflate(R.layout.group_listview_item,null);bDpHTML5中文学习网 - HTML5先行者学习网
img = (ImageView) convertView.findViewById(R.id.logo);bDpHTML5中文学习网 - HTML5先行者学习网

return convertView;bDpHTML5中文学习网 - HTML5先行者学习网

} }bDpHTML5中文学习网 - HTML5先行者学习网

bDpHTML5中文学习网 - HTML5先行者学习网
上面的部分,ImageView就是一个全局变量。而这个时候,我们则需要把 ImageView定义为局部变量,bDpHTML5中文学习网 - HTML5先行者学习网
复制代码 代码如下:
bDpHTML5中文学习网 - HTML5先行者学习网
 public class  Adapter extends BaseAdapter {bDpHTML5中文学习网 - HTML5先行者学习网

 public View getView(int position, View convertView, ViewGroup parent) {bDpHTML5中文学习网 - HTML5先行者学习网
     convertView = mInflater.inflate(R.layout.group_listview_item,null);bDpHTML5中文学习网 - HTML5先行者学习网
     ImageView  img = (ImageView) convertView.findViewById(R.id.logo);bDpHTML5中文学习网 - HTML5先行者学习网

    return convertView;bDpHTML5中文学习网 - HTML5先行者学习网

} }bDpHTML5中文学习网 - HTML5先行者学习网

bDpHTML5中文学习网 - HTML5先行者学习网
这个时候则表示每一个Item里的ImageView了。还有一种情况是在做购物车的时候,可以点击加减的图标去改变购物车内的商品数量。当你定义数量  num 的时候,也必须定义为局部变量。如果会使用ViewHolder的话更好了。bDpHTML5中文学习网 - HTML5先行者学习网
bDpHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助