一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

android listview會重復(fù)顯示的問題 | 老狼博客

 guitarhua 2016-05-16

android listview會重復(fù)顯示的問題

前面也碰到過這個問題,不過后來解決了,但是沒有留意解決的根本,今天網(wǎng)上搜索了一下,發(fā)現(xiàn)很多人碰到了同樣的問題,不過很多人也沒有找到問題的本質(zhì)所在

public View getView(int position, View convertView, ViewGroup parent) {

if(convertView==null){

LinearLayout ll = new LinearLayout(this.context);

CheckBox radioButton = new CheckBox(this.context);

radioButton.setPadding(0, 0, 0, 0);

final String key = this.keys[position];

radioButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

if(!isChecked){

datas.put(key, false);

}else{

datas.put(key, true);

}

}

});

if(!datas.get(key)){

radioButton.setChecked(false);

}else{

radioButton.setChecked(true);

}

TextView tv = new TextView(this.context);

tv.setText(this.attributes.get(key)+key+position);

tv.setGravity(Gravity.RIGHT);

tv.setPadding(0, 0, 10, 0);

tv.setTextColor(Color.BLACK);

ll.setGravity(Gravity.RIGHT);

ll.setPadding(5, 5, 10, 5);

ll.addView(tv);

ll.addView(radioButton);

return ll;

}

return convertView;

}

其實產(chǎn)生的原因在于android的listview對顯示做了優(yōu)化,也就是在內(nèi)存中只保存顯示數(shù)量(listview當前能夠顯示的行數(shù),有誤差,因為有些只顯示半行),對于如果用上面的方法,就會產(chǎn)生一個循環(huán)顯示,其實如果你不需要保存每行的數(shù)據(jù),完全可以把convertView==nul這個條件去掉,因為系統(tǒng)已經(jīng)幫我們做了優(yōu)化,當然如果你想對每行做記錄,那就只能改成以下的方式 :

@Override

public View getView(int position, View convertView, ViewGroup parent) {

if(this.rows[position]==null){

LinearLayout ll = new LinearLayout(this.context);

CheckBox radioButton = new CheckBox(this.context);

radioButton.setPadding(0, 0, 0, 0);

final String key = this.keys[position];

radioButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

if(!isChecked){

datas.put(key, false);

}else{

datas.put(key, true);

}

}

});

if(!datas.get(key)){

radioButton.setChecked(false);

}else{

radioButton.setChecked(true);

}

TextView tv = new TextView(this.context);

tv.setText(this.attributes.get(key)+key+position);

tv.setGravity(Gravity.RIGHT);

tv.setPadding(0, 0, 10, 0);

tv.setTextColor(Color.BLACK);

ll.setGravity(Gravity.RIGHT);

ll.setPadding(5, 5, 10, 5);

ll.addView(tv);

ll.addView(radioButton);

this.rows[position] = ll;

return ll;

}

return this.rows[position];

}

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产成人一区二区三区久久| 欧美黑人在线精品极品| 国产一区二区三区不卡| 果冻传媒在线观看免费高清| 国产av精品一区二区| 91欧美日韩国产在线观看| 国产一级片内射视频免费播放| 亚洲天堂精品一区二区| 丰满人妻一二三区av| 国产91人妻精品一区二区三区| 欧美午夜国产在线观看| 黑丝袜美女老师的小逼逼| 国产丝袜美女诱惑一区二区| 精品久久久一区二区三| 亚洲男人的天堂久久a| 日韩亚洲激情在线观看| 东京热男人的天堂久久综合| 懂色一区二区三区四区| 国产又粗又猛又爽色噜噜| 小草少妇视频免费看视频| 久热人妻中文字幕一区二区| 性感少妇无套内射在线视频| 婷婷色网视频在线播放| 在线观看日韩欧美综合黄片| 亚洲人妻av中文字幕| 欧美乱妇日本乱码特黄大片| 日韩精品中文字幕亚洲| 欧美午夜伦理在线观看| 午夜国产精品福利在线观看| 久久精品一区二区少妇| 国产不卡一区二区四区| 国产户外勾引精品露出一区| 欧美性高清一区二区三区视频| 国产午夜精品在线免费看| 国产又长又粗又爽免费视频 | 国产av一区二区三区久久不卡| 最新日韩精品一推荐日韩精品| 国产精品成人又粗又长又爽| 91欧美亚洲精品在线观看| 1024你懂的在线视频| 99久久人妻精品免费一区|