【问题标题】:BackButton without text SwiftUI没有文字SwiftUI的后退按钮
【发布时间】:2020-04-16 16:13:40
【问题描述】:

其实,这就是问题所在。 我有这样的屏幕,我想更改 BackButton。

我的视图屏幕: enter image description here

我想要代替带有标准数组 + 文本 BACK 的蓝色后退按钮,只是没有文本的黑色数组。

换句话说,基本上从后退按钮中删除文本并将颜色更改为黑色。怎么不实现呢?

【问题讨论】:

    标签: swift navigation swiftui navigationbar back-button


    【解决方案1】:

    您可以在视图中使用适当的修饰符,使其变为黑色且不带文本。您需要指定无按钮并提供您自己的图像以及返回功能。

    import SwiftUI
    
    struct ContentView: View {
        var body: some View {
            NavigationView {
                NavigationLink(destination: SecondView()) {
                    Text("Hello, World!")
                }
            }
        }
    }
    
    struct SecondView: View {
        @Environment(\.presentationMode) var presentation
    
        var body: some View {
            VStack {
                Text("Hello")
                Text("Second view")
            }
            .navigationBarBackButtonHidden(true)
            .navigationBarItems(leading: Button(action: {
                self.presentation.wrappedValue.dismiss()
            }) {
                Image(systemName: "chevron.left")
            }
            .foregroundColor(.black))
        }
    }
    

    已编辑:插入适当的图像。

    【讨论】:

    • 问题是这样切换到新视图后图标不会立即出现,而是假设在0.5秒后,这在soy队列中非常明显。我怎样才能避免这种情况?
    • navigationBarItem 的显示应该没有延迟。这是 Apple 向 navBar 添加按钮的方式 - 他们不会为如此重要的事情实现缓慢的系统。您的系统必须承受沉重的人为负载。你在真机上试过吗?它会立即出现。
    猜你喜欢
    • 2020-02-22
    • 1970-01-01
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多