gpt4 book ai didi

ios - 开关在 SMSegmentViev 中不起作用

转载 作者:行者123 更新时间:2023-11-30 13:46:05 25 4
gpt4 key购买 nike

我使用框架SMSegmentView,我无法实现numberOfRowsInSection和cellForRowAtIndexPath中的切换...当您在模拟器中按段表启动时,按索引段不会更改。我无法理解该错误

import UIKit

class DailyStandingViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, SMSegmentViewDelegate {

@IBOutlet var standingTableView: UITableView!

let standingExersiseName = ["БЕГ", "ПРЫЖКИ", "ПРИСЕДАНИЯ", "ОТЖИМАНИЯ", "ТОЛЧЕК"]
let standingExersiseImage = ["bb", "bt", "ca", "co", "de"]

let sittingExersiseName = ["ПРИСЕД", "СКАЧКИ", "ПРИСЕДАНИЯ", "ОТЖИМАНИЯ", "ТОЛЧЕК"]
let sittingExersiseImage = ["bb", "bt", "ca", "co", "de"]

var segmentControler: SMSegmentView!
var alphaSegmentView: SMBasicSegmentView!
var seletionBar: UIView = UIView()


override func viewDidLoad() {
super.viewDidLoad()
//СОЗДАЕМ СЕГМЕНТ
self.view.frame = CGRectMake(-5.0 , 0.0, self.view.frame.size.width + 10, 40.0)
self.view.backgroundColor = UIColor(red: 241.0/255.0, green: 83.0/255.0, blue: 84.0/255.0, alpha: 1.0)
let segmentFrame = CGRect(x: -5.0 , y: 0.0, width: self.view.frame.size.width + 10, height: 40.0)

self.segmentControler = SMSegmentView(frame: segmentFrame, separatorColour: UIColor(red: 241.0/255.0, green: 83.0/255.0, blue: 84.0/255.0, alpha: 1.0), separatorWidth: 0.0, segmentProperties: [keySegmentTitleFont: UIFont.systemFontOfSize(16.0), keySegmentOnSelectionColour: UIColor(red: 241.0/255.0, green: 83.0/255.0, blue: 84.0/255.0, alpha: 1.0), keySegmentOffSelectionColour: UIColor(red: 241.0/255.0, green: 83.0/255.0, blue: 84.0/255.0, alpha: 1.0)])

self.segmentControler.delegate = self
self.segmentControler.addSegmentWithTitle("STANDING", onSelectionImage: nil, offSelectionImage: nil)
self.segmentControler.addSegmentWithTitle("SITTING", onSelectionImage: nil, offSelectionImage: nil)
self.segmentControler.layer.borderColor = UIColor(red: 241.0/255.0, green: 83.0/255.0, blue: 84.0/255.0, alpha: 1.0).CGColor

self.seletionBar.frame = CGRect(x: 0.0, y: 33.5, width: self.segmentControler.frame.size.width/CGFloat(self.segmentControler.numberOfSegments), height: 6.0)
self.seletionBar.backgroundColor = UIColor.whiteColor()

self.segmentControler.selectSegmentAtIndex(0)

self.view.addSubview(self.segmentControler)
}
func segmentView(segmentView: SMBasicSegmentView, didSelectSegmentAtIndex index: Int) {

let placeSelectionBar = { () -> () in
var barFrame = self.seletionBar.frame
barFrame.origin.x = barFrame.size.width * CGFloat(index)
self.seletionBar.frame = barFrame
}
if self.seletionBar.superview == nil {
self.segmentControler.addSubview(self.seletionBar)
placeSelectionBar()
}
else {
UIView.animateWithDuration(0.3, animations: {
placeSelectionBar()
})
}
}


override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

var returnValue = 0

switch (segmentControler.indexOfSelectedSegment) {
case 0: // NOT WORK ON SIMULATOR
returnValue = standingExersiseName.count
break
case 1: // NOT WORK ON SIMULATOR
returnValue = sittingExersiseName.count
break

default:
break
}
return returnValue
}

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

let myCell = tableView.dequeueReusableCellWithIdentifier("myCell", forIndexPath: indexPath)

switch (segmentControler.indexOfSelectedSegment) {
case 0: // NOT WORK ON SIMULATOR
myCell.textLabel?.text = standingExersiseName[indexPath.row]
myCell.imageView!.image = UIImage(named:standingExersiseImage[indexPath.row])
break
case 1: // NOT WORK ON SIMULATOR
myCell.textLabel?.text = sittingExersiseName[indexPath.row]
myCell.imageView!.image = UIImage(named:sittingExersiseImage[indexPath.row])
break

default:
break
}

return myCell
}

最佳答案

我们必须向 didSelectSegmentAtIndex 添加“standTableView.reloadData ()”

关于ios - 开关在 SMSegmentViev 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34917166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com