目前是否可以更改 SwiftUI 2.0 中 DatePicker 的文本对齐方式?
DatePicker(selection: $birthDate, in: ...Date().stripTime(), displayedComponents: .date) {
Text("Birthday")
}
Run Code Online (Sandbox Code Playgroud)
这在左侧显示生日文本,在其旁边显示日期选择器文本,但我希望它在右侧
在HIG Apple 中写道:在 iOS 14 及更高版本中,一个按钮可以显示一个下拉菜单,其中列出了人们可以从中选择的项目或操作
这正是我想要的项目。这张带有下拉菜单的“更多”栏按钮的图片完全符合要求。但是,有没有人举个例子说明如何使用 SwiftUI 从按钮创建下拉菜单(不是上下文菜单)?
我需要在工作表内的表单中使用选择器。但这是行不通的。如果我单击选择器,我将无法选择元素。
struct ContentView: View {
@State private var showSheet = false
var body: some View {
Button("Sheet", action: {
showSheet.toggle()
})
.sheet(isPresented: $showSheet, content: {
SecondView()
})
}
}
struct SecondView: View {
var body: some View {
Form {
Picker(selection: .constant(1), label: Text("Picker")) {
Text("1").tag(1)
Text("2").tag(2)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这里有什么建议吗?
在我的 SwiftUI 应用程序中,我希望在TextEditor失去焦点/完成编辑时收到通知。理想情况下,类似 的TextField回调onCommit将是完美的。
使用下面的 newonChange确实可以接收用户输入的每个新字符,但我真的想知道它们何时完成。
@State var notes = ""
...
TextEditor(text: $notes)
.onChange(of: notes, perform: { newString in
print(newString)
})
Run Code Online (Sandbox Code Playgroud) 在互联网上搜索我发现在小部件的旧版本中存在以下内存限制:
对用户交互做出适当的响应。表现良好(尤其是 iOS 小部件必须明智地使用内存,否则系统可能会终止它们)。” 小部件的内存限制为 16 MB,因此请保持简单并确保测试您的小部件是否存在内存泄漏
我想了解新版本iOS 14可能使用的内存是否相同或已更改。
我在文档中找不到任何内容。
我想在 中编写一个小部件Swift ui,但首先我想了解是否有任何限制。
谁能给我一些澄清?
将手机更新到 iOS 14 后,我无法再与应用内UICollectionViewCell或UITableViewCell应用内的内容进行交互。该问题也存在于运行 iOS 14 的 iOS 模拟器中,但在 iOS 13 及更低版本上一切正常。
我在不再可交互的单元格中有按钮和其他集合视图。就好像整个单元格内容都变成了静态。下面是来自我UICollectionViewCells和的一些代码UICollectionViewController,但是同样的问题存在于UITableViewCells. 我正在使用 Swift 5.didSelectItemAt并且类似的功能工作正常,它在单元格内进行交互,但contentView似乎无法正常工作。如有必要,我可以粘贴更多代码,因为我修剪了一些绒毛和其他我缩小范围的代码,这不是问题。
由于这个问题存在于两者中UICollectionViewCell,UITableViewCell我相信我在更基本的层面上做错了。
相关代码来自UICollectionViewCell:
override init(frame: CGRect) {
super.init(frame: frame)
setupContainers()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setupContainers() {
// Adding subviews like so...
addSubview(subviewToAdd)
// Anchor all subviews using NSConstraints
}
Run Code Online (Sandbox Code Playgroud)
然后从相关代码 UICollectionViewController
override func viewDidLoad() {
super.viewDidLoad() …Run Code Online (Sandbox Code Playgroud) 我有一个关于如何在 iOS 14 上设置 UDP 侦听器的问题。我有一个 UDP 侦听器,该侦听器过去一直有效,但更新到 iOS 14 后,它偶尔有效/根本无效。
\n它位于 NSObject 中,并在端口 15000(无特定 IP 地址)上侦听本地网络上的 UDP 广播。它使用 CocoaAsyncSocket 库。当我调用setUpSocket()本地网络权限时,不会触发,但应用程序能够偶尔拾取 UDP 数据包。
\nvar socket: GCDAsyncUdpSocket?\nvar broadcastPort: UInt16 = 15000\nvar broadcastAddress: String = ""\nvar connectAddress = ""\nvar connectPort = 0\n\nfunc setUpSocket() {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0findUDP()\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0let socket = GCDAsyncUdpSocket(delegate: self, delegateQueue: DispatchQueue.main)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0socket.setIPv4Enabled(true)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0socket.setIPv6Enabled(false)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0do {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0try socket.bind(toPort: broadcastPort) /*15000*/\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0try socket.enableBroadcast(false)\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0try socket.beginReceiving()\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0} catch let error as NSError {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0print("Issue with setting up listener \\(error)")\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0}\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n\xc2\xa0\xc2\xa0}\n\n/*Called when UDP packets are received.*/\nfunc udpSocket(_ sock: GCDAsyncUdpSocket, didReceive data: Data, …Run Code Online (Sandbox Code Playgroud) 当我从主屏幕添加小部件时,我可以看到 Apple 创建的时钟应用程序有两个小WidgetFamily布局。
如何在时钟应用程序中制作两个小部件?
我看到我只能为每个WidgetFamily.
我通过将 setHighlightsToday 与 UIDatePicker 结合使用,收到了来自 iOS 14 的崩溃报告。
Thread 1: "-[_UIDatePickerIOSCompactView setHighlightsToday:]: unrecognized selector sent to instance"
Run Code Online (Sandbox Code Playgroud)
我今天看不到突出显示的修复程序?
我知道我还需要检查选择器是否可用。
light我需要知道你们中是否有人知道 SwiftUI 中的一个系统,当外观从模式切换到模式时更新 Widget,dark反之亦然。
我可以更改文本和图像,但我使用一种方法来显示地图的屏幕截图,并且每次外观发生变化时我都应该运行它以获得正确的地图颜色。
ios14 ×10
swift ×7
swiftui ×7
ios ×5
widgetkit ×3
bonjour ×1
cocoa-touch ×1
datepicker ×1
menu ×1
objective-c ×1
udp ×1
uidatepicker ×1
uikit ×1
uitableview ×1
widget ×1
xcode12 ×1