Android中全局变量与局部变量的使用总结-阿里云开发者社区

开发者社区> 玄学酱> 正文

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

简介:
+关注继续查看

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

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


  1. public class  Adapter extends BaseAdapter { 
  2. private ImageView img; 
  3.  
  4. public View getView(int position, View convertView, ViewGroup parent) { 
  5. convertView = mInflater.inflate(R.layout.group_listview_item,null); 
  6. img = (ImageView) convertView.findViewById(R.id.logo); 
  7.  
  8. return convertView; 
  9.  
  10. } } 

上面的部分,ImageView就是一个全局变量。而这个时候,我们则需要把 ImageView定义为局部变量,


  1. public class  Adapter extends BaseAdapter { 
  2.  
  3.  public View getView(int position, View convertView, ViewGroup parent) { 
  4.      convertView = mInflater.inflate(R.layout.group_listview_item,null); 
  5.      ImageView  img = (ImageView) convertView.findViewById(R.id.logo); 
  6.  
  7.     return convertView; 
  8.  
  9. } } 

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





本文作者:佚名
来源:51CTO

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ACCESS 触发器delete table事件变量使用及连续删除
    ACCESS的TABLE DELETE 事件触发后,会出现一个[旧]的记录,这条记录非常有用,可以用来作条件判断使用。     如下图的table event事件中,删除一条记录后,可以使用[旧]记录连接执行多个删除相关记录的操作。
582 0
Android EventBus 3.0.0 使用总结
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/53065112 本文出自【赵彦军的博客】 前言 EventBus框架 EventBus是一个通用的叫法,例如Google出品的Guava,Guava是一个庞大的库,EventBus只是它附带的一个小功能,因此实际项目中使用并不多。
961 0
Python3中关于下划线变量和命名的总结
变量 #!-*-coding:utf-8-*- #__author__ = 'ecaoyng' # # 变量 #_xxx,单下划线开头的变量,标明是一个受保护(protected)的变量,原则上不允许直接访问,但外部类还是可以访问到这个变量。
897 0
shell 全局和局部变量
/******************************************************************** * shell 全局和局部变量 * 声明: * 到目前为止,在写shell脚本的时候,经常被shell的函数中的变量 * 作用域搞得糊涂,于是今天特意查了点资料,看到底怎么回事。
608 0
linux进程的堆栈空间_代码段(指令,只读)、数据段(静态变量,全局变量)、堆栈段(局部变量)、栈【转】
转自:http://blog.csdn.net/gongweijiao/article/details/8207333 原文参见:http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201215115845553/    一)概述   .堆栈是一个用户空间的内存区域,进程使用堆栈作为临时存储。
803 0
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
20710
文章
438
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载