Android中全局變量與局部變量的使用總結(jié)
全局變量顧名思義就是在整個的類中或者可在多個函數(shù)中調(diào)用的變量。也稱為外部變量。局部變量則是特定過程或函數(shù)中可以訪問的變量。聲明一個變量是很 容易的,但是講到使用的時候,卻不是想象的那樣簡單。至于本人則是經(jīng)常定義全局變量使用,但也就是因為這樣,定義的是全局變量。也饒了不少的彎子。

在使用Adapter即適配器的時候,通常適配器總是與listView使用,因為一個listView 基本上都會有一個listView的Item的布局,下面的情景是:在每個Item里面都會有一個ImageView,當我點擊某一條的時候,則需要為該 Item的ImageView換背景色或者換成別的背景圖片,這個時候可能會出現(xiàn)的一種情況是 你明明點的第一條,你會發(fā)現(xiàn)第三條或者第二條的圖片也變了。這就是因為你定義的是全局變量。代碼部分如下:
public class Adapter extends BaseAdapter {private ImageView img;public View getView(int position, View convertView, ViewGroup parent) {convertView = mInflater.inflate(R.layout.group_listview_item,null);img = (ImageView) convertView.findViewById(R.id.logo);return convertView;} }
上面的部分,ImageView就是一個全局變量。而這個時候,我們則需要把 ImageView定義為局部變量,
public class Adapter extends BaseAdapter { public View getView(int position, View convertView, ViewGroup parent) { convertView = mInflater.inflate(R.layout.group_listview_item,null); ImageView img = (ImageView) convertView.findViewById(R.id.logo); return convertView;} }
這個時候則表示每一個Item里的ImageView了。還有一種情況是在做購物車的時候,可以點擊加減的圖標去改變購物車內(nèi)的商品數(shù)量。當你定義數(shù)量 num 的時候,也必須定義為局部變量。如果會使用ViewHolder的話更好了。
相關(guān)文章:
1. Java commons-httpclient如果實現(xiàn)get及post請求2. 一文帶你徹底理解Java序列化和反序列化3. JS中6個對象數(shù)組去重的方法4. Python基于requests庫爬取網(wǎng)站信息5. vscode運行php報錯php?not?found解決辦法6. python中文本字符處理的簡單方法記錄7. PHP laravel實現(xiàn)導出PDF功能8. Python使用Selenium自動進行百度搜索的實現(xiàn)9. PHP利用curl發(fā)送HTTP請求的實例代碼10. 資深程序員:給Python軟件開發(fā)測試的25個忠告!

網(wǎng)公網(wǎng)安備