预期声明错误TableView

时间:2017-05-11 20:34:55

标签: ios swift uitableview tableview tablecell

我正在开发一款应用,并希望在向右滑动的位置创建一个删除选项,然后点击删除以删除一行。我收到了“预期声明”错误,我试图将其修复约20分钟。

import UIKit

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

    var StoredValues = Values()
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        return UITableViewCell()
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 4
    }
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        self.performSegue(withIdentifier: "meunSegue", sender: self)

        func prepare(for segue: UIStoryboardSegue, sender: Any?) {
            _ = segue.destination as! SecondViewController
        }
        class SecondViewController: UIViewController {

            var recievedData = ""
            override func viewDidLoad() {
                super.viewDidLoad()
                print(recievedData)
            }
        }
    }
    - (void)tableView:(UITableView *)tableView committEditStyle: (UITableViewCellEditingStyle)editingStyle forRowAtIndexPath: (NSIndexPath *)indexPath {if (editingStyle == UITableViewCellEditingStyleDelete) {
    [maTheData removeObjectAtIndex: [indexPath row]];
    [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];


    }
}

2 个答案:

答案 0 :(得分:1)

方法内部有一个方法,而不是调用方法。换句话说,glGetError内的func。更进一步,我不知道你怎么能把func放在class里面?正如Sandeep所提到的,你也在混淆funcObjective C

Swift

答案 1 :(得分:1)

你正在混合

- (void)tableView:(UITableView *)tableView committEditStyle: (UITableViewCellEditingStyle)editingStyle forRowAtIndexPath: (NSIndexPath *)indexPath {if (editingStyle == UITableViewCellEditingStyleDelete) {
[maTheData removeObjectAtIndex: [indexPath row]];
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];

看起来像Objective C,而你的其他同学都在Swift中。当你使用多种语言时,很容易混淆,但在这样的情况下,编译器可以很好地帮助你。