2014年9月1日 星期一

[android]BaseAdapter 刷新資料避免重覆內容

這幾天在Android遇到了這個問題

就是在自訂Android的BaseAdapter的時候

getView重覆進去跑了

查到有人說

listview的layout 長寬要設定為match_parent


另一種是說ListView要更新

yourAdapter.notifyDataSetChanged();

但結果還是一樣

因為我在getview去動態產生內容

所以要去把之前的layout刪除 

才不會有重覆的內容產生在listview



 @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewTag viewTag;
        if (convertView == null) {
            convertView = layoutInflater.inflate(R.layout.layout_item, null);
            viewTag = new ViewTag((TableLayout) convertView.findViewById(R.id.tableLL),
                    (TextView) convertView.findViewById(R.id.question));
            convertView.setTag(viewTag);
        }
        else
        {
            viewTag = (ViewTag) convertView.getTag();
            viewTag.tableLL.removeAllViews();
        }

沒有留言: