繁体   English   中英

难以点击 SwiftUI 导航栏项目中的按钮

[英]Hard to tap button in SwiftUI navigation bar items

我有一个带有Button的 SwiftUI NavigationView作为领先的导航栏项目。 似乎只有当用户点击那个小Image时才会触发按钮动作。 我可以在不影响导航栏高度的情况下将可点击区域放大吗?

我尝试将.frame添加到Image ,但这使导航栏太大。

import SwiftUI

struct ContentView: View {
    var body: some View {
        NavigationView {
            Text("Foo")
                .navigationBarTitle(Text("Title"), displayMode: .inline)
                .navigationBarItems(leading:
                    HStack {
                        Button(action: {
                            print("tapped")
                        }) {
                            Image(systemName: "info.circle")
                        }
                    })
            }
    }
}

(其中一个)以下修饰符可以提供帮助:

.imageScale(.large)

来自 SFSymbols 的图像具有三种尺寸:

  • .small用于内嵌文本
  • .medium用作图标
  • .large用作导航栏或底部栏中的按钮

.padding()

在图像周围添加填充。 填充也应该是可点击的。

试试这个

struct ContentView: View {
    var body: some View {
        NavigationView {
            Text("Foo")
                .navigationBarTitle(Text("Title"), displayMode: .inline)
                .navigationBarItems(leading:
                    HStack {
                        Button(action: {
                            print("tapped")
                        }) {
                            Image(systemName: "info.circle").imageScale(.large) //Here is the change in image scale property
                        }
                    })
            }
    }
}

快乐编码...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM