3

図書館エウレカについての質問です。

いくつPushRowかのオプション(名前)があります。また、これらのオプションの最初の項目を、初期化時にデフォルトで選択される項目として設定しました。

var names = ["Jake", "Cassie", "Rachel", "Marco", "Ax", "Tobias"]

<<< PushRow<WindowStyle>("NamesRow") {
        $0.title = "Names"
        $0.options = names
        $0.value = names.first
    }

アプリを実行すると、期待どおりデフォルトでJakeが選択されます。をタップしてジェイクPushRowを再選択すると、選択が解除されます。これは予想される動作だと思います。しかし、すでに選択されているオプション行をタップすると、選択解除を避けたいです。

同じオプションが選択されると、コールバック クロージャのrowプロパティが返されます。nil チェックを実行して早期に終了しようとしましたが、うまくいきません。選択解除がすべて発生した後にメソッドが起動されるようです。onChangenilonChange

.onChange { row in
    guard let selectedName = row.value else {
        return
    }
}

選択解除を無効にするにはどうすればよいですか?

4

2 に答える 2

5

これに対する答えが見つかったかどうかはわかりません。

そして、私はこれを自分で行ったことはありませんが、正しい方向を示したいと思います.

彼らは Swift 3 へのアップデートにそれを含めました。

https://github.com/xmartlabs/Eureka/issues/261#issuecomment-255439929で同じものを見つけてください。

そして参考までに、

.onPresent { form, selectorController in
         selectorController.enableDeselection = false
}
于 2016-11-10T05:09:47.717 に答える