iOS swift UIImageView change image in tableView cell

后端 未结 3 620
南旧
南旧 2021-01-16 22:21

I have a strange problem in tableView Custom cell. for like Image action I write these code in Custom cell called FeedViewCell

3条回答
  •  青春惊慌失措
    2021-01-16 22:58

    Try code its working 100%

      var selectindex : Int?
      var selectedindex : NSMutableArray = NSMutableArray()
      @IBOutlet var tableview: UITableView!
    
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
            let cell = tableView.dequeueReusableCellWithIdentifier("LikeCell", forIndexPath: indexPath)
    
            let like: UIButton = (cell.viewWithTag(2) as! UIButton)
            let comment: UIButton = (cell.viewWithTag(3) as! UIButton)
            if selectedindex.containsObject(indexPath.row) {
                    like.setBackgroundImage(UIImage.init(named: "like.png"), forState: .Normal)
            }else{
                    like.setBackgroundImage(UIImage.init(named: "like (1).png"), forState: .Normal)
            }
           comment.setBackgroundImage(UIImage(named: "chat.png"), forState: UIControlState.Normal)
            like.addTarget(self, action: #selector(self.CloseMethod(_:event:)), forControlEvents: .TouchDown)
            comment.addTarget(self, action: #selector(self.CloseMethod1(_:event:)), forControlEvents: .TouchDown)
    
            return cell
    
        }
    
    
    
     @IBAction func CloseMethod(sender: UIButton, event: AnyObject) {
    
            let touches = event.allTouches()!
            let touch = touches.first!
            let currentTouchPosition = touch.locationInView(self.tableview)
            let indexPath = self.tableview.indexPathForRowAtPoint(currentTouchPosition)!
            selectindex = indexPath.row
            if selectedindex.containsObject(selectindex!) {
                selectedindex.removeObject(selectindex!)
            }else{
                  selectedindex.addObject(selectindex!)
            }
            self.tableview.reloadData()
        }
    

提交回复
热议问题