tableViewCell中的动画按钮

时间:2017-06-17 09:34:20

标签: ios swift uitableview

我有一个自定义的可扩展表视图。扩展的tableViewCell中有一个包含一些动画的按钮。所以当扩展tableViewCell时:

 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Cells", for: indexPath) as! ProfileTableViewCell
    if isExpanded && self.selectedIndex == indexPath {
                cell.CustomView.frame = CGRect(x: 7, y: 8, width: 359, height: 283)
            }
           else {
           cell.CustomView.frame = CGRect(x: 7, y: 8, width: 359, height: 115)

            }}

您可以查看该单元格的更多详细信息。在扩展单元格的底部,有一个按钮。当您单击该按钮时,会出现另外三个按钮:

@IBAction func UserAddClicked(_ sender: Any) {
        if UserAdd.currentImage == #imageLiteral(resourceName: "icons8-Plus-48"){
            UIView.animate(withDuration: 0.3, animations: {

                self.UserShare.alpha = 1
                self.UserEdit.alpha = 1
                self.UserDelete.alpha = 1

            })
        }else {
            UIView.animate(withDuration: 0.3, animations: {

                self.UserShare.alpha = 0
                self.UserEdit.alpha = 0
                self.UserDelete.alpha = 0

            })
        }
        toggleButton(button: sender as! UIButton, onImage: #imageLiteral(resourceName: "icons8-Plus-48"), offImage: #imageLiteral(resourceName: "AddOn"))
    }

当我单击单元格时,它应该返回到其原始的非扩展单元格高度。我的问题是当我点击单元格返回它的非扩展单元格高度时,我也希望三个按钮消失。因此,如果我第三次单击单元格,在单元格的底部我应该只看到一个按钮。但是当我第三次单击单元格来展开它时,我仍然看到了四个按钮。

1 个答案:

答案 0 :(得分:1)

我正尽力回答这个问题。只需将您选择的表格视图单元格代码更改为:

if isExpanded && self.selectedIndex == indexPath {
            cell.CustomView.frame = CGRect(x: 7, y: 8, width: 359, height: 283)

                self.UserShare.alpha = 0
                self.UserEdit.alpha = 0
                self.UserDelete.alpha = 0


        }
       else {
       cell.CustomView.frame = CGRect(x: 7, y: 8, width: 359, height: 115)

        }

如果有效,请告诉我。