Mac Catalyst + Swift UIでスライダーがうまく動かない

SwiftUIのチュートリアルの最後に、Mac用Appを作成する章があります。
そこまでのチュートリアルで作成したコードをそのまま活用して、少し手を加えればMac用Appができるのに、感銘を受けました。

独自のApp開発に当たっても、SwiftUIで作成開始。iPhone/iPadに加えて、MacOSも対象としました。
しかし、UIViewを用いたいとき、MacOSでは使えません。
iPad用のコードと共用でMac用Appが作成できるMac Catalystという機能があったので、そちらを使って作成を継続しました。

SwiftUI+Mac Catalystで、以下のようなUIを作成しました。

struct ContentView: View {
    @State private var seekPos: Double = 0
    
    var body: some View {
        Button(action: {
            
        }, label: {
            Text("Button A")
        })
        .padding()
        
        Button(action: {
            
        }, label: {
            Text("Button B")
        })
        .padding()
        
        Slider(value: $seekPos)
    }
}

iPhoneやiPadで実行した場合、スライダーは動きます。
しかし、Macで実行した場合、ボタンA、ボタンBと押したあと、スライダーをドラッグしようとしても動きません。
(Xcode Version 12.5.1 、macOS Big Sur バージョン 11.5.2で実行)

これには、困りました。
SwiftUI+Mac Catalystでの開発は取りやめて、
UIKit+Mac Catalystで開発を進めることとしました。

投稿者:

nackpan

iOSアプリを作っています。 リピーティングに便利な「語学学習支援プレイヤー」つくりました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください