在 SwiftUI 中关闭按钮突出显示

Posted

技术标签:

【中文标题】在 SwiftUI 中关闭按钮突出显示【英文标题】:Turn off button highlighting in SwiftUI 【发布时间】:2019-08-05 13:03:44 【问题描述】:

如何在轻按或按下 SwiftUI 时关闭按钮突出显示。

这是我的代码:

ScrollView 
        ForEach(searchManager.resultUsers)  user in
            Button(action: 
                self.showProfile = true
                self.user = user
            ) 
                SearchUserRow(user: user)
                    .foregroundColor(.primary)
            
        
    .sheet(isPresented: $showProfile) 
        ProfileView(profileUser: self.user)
            .environmentObject(ProfileManager(userID: self.user.userID, fetchingMode: .user(mode: .tweets)))
    

如果我删除按钮并将onTapGesture 添加到SearchUserRow,则不能选择完整的行,只能选择内容部分。

【问题讨论】:

尝试使用.foregroundColor(.primary)直接在你想要保留的颜色上。 @kontiki 尝试了同样的方法,但它不起作用 【参考方案1】:

试试这个,它对我有用,但由于我没有SearchUserRow() 代码,我自己无法完全尝试:

SearchUserRow(user: user).foregroundColor(.primary)
    .contentShape(Rectangle())
    .onTapGesture  ... 

【讨论】:

以上是关于在 SwiftUI 中关闭按钮突出显示的主要内容,如果未能解决你的问题,请参考以下文章

在 Visual C++ 中关闭突出显示“事件”关键字

以编程方式突出显示 SwiftUI 按钮

根据 SwiftUI 中的状态(正常、突出显示、禁用)更改按钮颜色?

从目标视图返回时,SwiftUI NavigationLink 显示为突出显示

在 SwiftUI 中突出显示语音话语

SwiftUI:使用 WkWebView 突出显示具有不同颜色的文本