1
저는 다른 셀 하위 클래스간에 전환하려는 프로그래밍 방식으로 segmentedControl을 만듭니다. 그러므로 나는 selectedSegmentIndex와 같다고 생각되는 정수를 생성했다. 문제는 내가 선택한 세그먼트 인덱스가 변경되었는지 확인 했는데도 0과 1 사이에서 변경되는 경우에도 정수가 항상 0 인 것입니다. 어떻게 정수가 항상 0입니까?segmentIndex는 selectedSegmentIndex와 같지 않아야합니다.
먼저 내가 그때의 valueChanged 방법을 만들어이
segmentedControl = UISegmentedControl(items: ["Detail", "Tickets"])
segmentedControl!.frame = CGRectMake((self.navigationController!.navigationBar.frame.width/2)-((self.navigationController!.navigationBar.frame.width-20)/2), self.navigationController!.navigationBar.frame.height-38, self.navigationController!.navigationBar.frame.width-20, 28)
segmentedControl!.selectedSegmentIndex = 0
segmentedControl!.tintColor = UIColor.whiteColor()
segmentedControl!.addTarget(self, action: Selector("valueChanged:"), forControlEvents: UIControlEvents.ValueChanged)
self.navigationController?.navigationBar.addSubview(segmentedControl!)
segmentSelected = 0
있는 viewDidLoad
에서 0으로 segmentedControl 및 설정 정수를 생성 한 후 정수var segmentSelected:Int?
을 만들
func valueChanged(sender: UISegmentedControl) {
println(segmentedControl?.selectedSegmentIndex)
if segmentedControl?.selectedSegmentIndex == 0 {
segmentSelected == 0
tableView.reloadData()
} else if segmentedControl?.selectedSegmentIndex == 1 {
segmentSelected == 1
tableView.reloadData()
}
println(segmentSelected)
}
'=='대신 '='할당 연산자를 사용하십시오. – marcusficner