推 ch8154: 先確定你的資料來源字串後面有沒有空白 05/02 20:42
抱歉,沒有說得很清楚定,資料確定沒有空白,因為出現這狀況之後,
只要滑動listview某些項就會跑成這樣,每次滑動跑版的項都不一樣
發現問題了,只要調用左邊Adapter的notifyDataSetChanged 就會變那樣...
※ 編輯: rockex6 (60.251.39.226), 05/03/2017 09:46:42
※ 編輯: rockex6 (60.251.39.226), 05/03/2017 10:08:08
→ ftplouis: 所以你的getView最後是return哪個 view ?看起來是沒寫 05/03 10:14
→ ftplouis: 應該不是notifyDataSetChanged的問題,單純只是你沒跟 05/03 10:22
→ ftplouis: 他講你return了那個item layout,這樣不會build error? 05/03 10:22
這個是整個getView
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
LinearLayout baseLayout = null;
if (convertView == null) {
baseLayout = (LinearLayout) LinearLayout.inflate(mContext, R.layout.item_area, null);
} else {
baseLayout = (LinearLayout) convertView;
}
TextView area = (TextView) baseLayout.findViewById(R.id.list_item1);
if (TempData.areaData.size() != 0) {
area.setText(TempData.areaData.get(position).getArea());
}
//將選中的選項反白
if (position == mAreaPosition) {
area.setTextColor(getResources().getColor(R.color.white));
} else {
area.setTextColor(getResources().getColor(R.color.colorBFBFBF));
}
return baseLayout;
}
※ 編輯: rockex6 (60.251.39.226), 05/03/2017 13:32:45
好..整個BUG釐清了,當我的listview點擊之後
最上第一項和最下第一項不可見的item位置跑板
因為我需要點擊item之後 把他的文字換顏色 所以叫了notifyDataSetChanged
但是這樣會跑板,把notifyDataSetChanged拔了之後就不會了
※ 編輯: rockex6 (60.251.39.226), 05/03/2017 15:47:19
推 givemepass: 沒用 Holder 這個 adapter 就浪費惹 05/03 20:50