2017-12-28 9 views
1

버튼을 클릭 한 후 이미지를 버튼에서 다른 것으로 변경해야합니다. 나는 setBackgroundImage()의 도움으로 이것을했다. 그러나 어떻게 한 번에 모든 버튼의 이미지를 변경 만 누르면 버튼 ... ! [단추] [1]다음 버튼을 누른 후 모든 버튼 재설정

내의 ViewController

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    self.tableView.separatorStyle = .none 
    let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! UIT 



     cell.TitleLabel.text=dataMas[indexPath.row] 
     cell.name.text = titleTrack[indexPath.row] 

     cell.btns.tag = indexPath.row 

     cell.btns.addTarget(self, action: #selector(ViewController.PlayTrack(_:)), for: UIControlEvents.touchUpInside) 







    return cell 
} 

및 셀에 이미지를 변경 할 클래스

수입 UIKit

클래스 UIT :있는 UITableViewCell {

@IBOutlet weak var btns: UIButton! 


@IBOutlet weak var TitleLabel: UILabel! 
@IBOutlet weak var name: UILabel! 




override func awakeFromNib() { 

} 

override func setSelected(_ selected: Bool, animated: Bool) { 

} 
,

}

+0

당신이 더 많은 정보를 제공 할 수 ?? –

+0

@ JeetendraKumar 내가 가진 모든 코드는 ViewController 클래스에 있습니다 : UITableViewController. 셀 클래스 UIT로 작업하기위한 클래스도 있습니다. UITableViewCell – Alex

+0

모든 단추를보기 컨트롤러의 인스턴스 속성으로 만들고 버튼의 동작 메서드에서 해당 속성을 변경하기 만하면됩니다. 사용자가'button1'을 두드리는 경우, 그 버튼의 액션 메소드에서,'button2','button3'에 대해 원하는 속성을 변경하십시오. 더 이상 아무것도 없습니다. – slickdaddy

답변

1

당신의 ViewController.PlayTrack 내에서 이것을 시도 :

var numberOfButtons: Int = 5 
@IBOutlet weak var btns: UIButton! 

for i in 1...numberOfButtons { 
    if btns.tag == i { 
     // SET IMAGE TO BTN HERE. 
    } 
} 
+0

예, 클릭하면 버튼이 바뀌지 만 다음 버튼을 클릭하면 기본 상태가 변경되지 않습니다. – Alex

관련 문제