Пользовательское изображение ячейки как AccessoryType в Swift

Привет, я надеюсь получить пользовательский тип аксессуаров для ячейки, который будет меняться между изображениями. сейчас это галочка, а потом нет галочки. Я использую Parse как свой бэкэнд, и у каждого пользователя есть подписчики, и он следит за несколькими людьми. Я хотел бы изменить это, чтобы отображать между одним из двух изображений для следования или + следовать. Прямо сейчас это установлено для галочки. Мой текущий код ниже для моего сделал Кто-нибудь есть какие-либо предложения?

переопределить функцию tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

    var cell:UITableViewCell = tableView.cellForRowAtIndexPath(indexPath)!

    if cell.accessoryType == UITableViewCellAccessoryType.Checkmark {

        cell.accessoryType = UITableViewCellAccessoryType.None

        var query = PFQuery(className:"followers")
        query.whereKey("follower", equalTo:PFUser.currentUser().username)
        query.whereKey("following", equalTo:cell.textLabel?.text)
        query.findObjectsInBackgroundWithBlock {
            (objects: [AnyObject]!, error: NSError!) -> Void in
            if error == nil {

                for object in objects {

                    object.delete()

                }
            } else {
                // Log details of the failure
                println(error)
            }
        }

    } else {

        cell.accessoryType = UITableViewCellAccessoryType.Checkmark

        var following = PFObject(className: "followers")
        following["following"] = cell.textLabel?.text
        following["follower"] = PFUser.currentUser().username

        following.save()

    }

}

1 ответ

Для меня я, вероятно, подкласс UIButton, и устанавливаю изображение для состояния по умолчанию и выбранного состояния.

и затем выполните действие:

    @IBAction func follow(sender: UIButton) {

        sender.selected = !sender.selected

        switch sender.selected {
        case true :
            print("do start follow")
        case false :
            print("cancel follow")
        }
    }

Другие вопросы по тегам