5

UITableView セルをスワイプすると、以下のコードが呼び出されます。

func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {

    //Problem code
    let delBut = UITableViewRowAction(style: UITableViewRowActionStyle(), title: delete_InLocal) { action, index in
        //Setup

Swift 3 への移行を開始したので、UITableViewRowActionStyle() でエラー メッセージが表示されます。

呼び出しにパラメータ 'rawValue' の引数がありません

この状況での Swift 3 の構文を知っている人はいますか?

4

2 に答える 2

12

デフォルトのイニシャライザは、Swift 3 の一部のインポートされた列挙型から削除されています。

の代わりにUITableViewRowActionStyle.default(またはあなたの場合は単に.default) を使用しますUITableViewRowActionStyle()

    let delBut = UITableViewRowAction(style: .default, title: delete_InLocal) { action, index in
于 2016-09-05T23:06:03.840 に答える
2

列挙型であるかのように UITableViewRowActionStyle を使用します。入力すると、複数のオプションが表示されます。

UITableViewRowActionStyle.Default
UITableViewRowActionStyle.Destructive
UITableViewRowActionStyle.Normal 

let delBut = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: delete_InLocal) { action, index in
}

場合によっては、この方法で「特別な」ケースのみが提供されます...そして、デフォルトの動作を示すために rawValue: 0 を使用する必要があります

于 2016-09-05T22:53:16.463 に答える