UITableviewCell上添加button,按钮的normal或selected状态显示不正常的可能原因。

根据返回的信息对cell上button的状态进行设置时,由于cell的复用机制,有时候会导致button的显示状态和我们设置的状态不一样,有可能的原因是我们根据返回数据进行设置时只设置了一种状态,比如:

    //点击点赞按钮
    if (model.user_praise) {
        //如果存在praise_user,说明已经点过赞,将按钮状态设置为已经点赞的状态
        cell.likeButton.selected = YES;
    }

 利用上面的方式进行设置就可能导致button状态显示不正常,正确的做法是两种条件都进行设置,如下:

    //点击点赞按钮
    if (model.user_praise) {
        //如果存在praise_user,说明已经点过赞,将按钮状态设置为已经点赞的状态
        cell.likeButton.selected = YES;
    } else {
        cell.likeButton.selected = NO;
    }

 

posted @ 2016-03-24 15:52  YouNeedCourage  阅读(350)  评论(0编辑  收藏  举报