我想存储2个int的元组和NSArray中的char.有没有比宣布持有2个整数和char的类更简单的方法?
我用这种方式试了它并且它有效,但对我来说似乎相当复杂.有更好,更轻松的方式吗?
@interface Container : NSObject
@property NSInteger a;
@property NSInteger b;
@property char c;
@end
@implementation Container
@synthesize a = _a;
@synthesize b = _b;
@synthesize c = _c;
-(Container*) initWitha:(NSInteger) a andB:(NSInteger) b andC: (char) c
{
if ((self = [super init])) {
self.a = a;
self.b = b;
self.c = c;
}
return self;
}
@end
...
//usage
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject: [[Container alloc] initWitha:5 andB:6 andC:'D']];
Run Code Online (Sandbox Code Playgroud)
谢谢
是否可以快速获取所有带有前台窗口的应用程序的列表,然后设置这些窗口的大小和位置。
我得到了这样的 Windows 属性列表
let type = CGWindowListOption.optionOnScreenOnly
let windowList = CGWindowListCopyWindowInfo(type, kCGNullWindowID) as NSArray? as? [[String: AnyObject]]
for entry in windowList!
{
var owner = entry[kCGWindowOwnerName as String] as! String
var bounds = entry[kCGWindowBounds as String] as? [String: Int]
var pid = entry[kCGWindowOwnerPID as String] as? Int32
print ("\(owner) \(bounds) \(pid) ")
if owner == "Erinnerungen"
{ bounds!["X"] = 0
bounds!["Y"] = 0
print("reset bounds")
let appRef = AXUIElementCreateApplication(pid!); //TopLevel Accessability Object of PID
print(appRef)
var value: AnyObject?
let …
Run Code Online (Sandbox Code Playgroud) 我希望包含 2222... 和 333... 的Text("111")
高度相同VStack
。
struct Test7: View {
var body: some View
{ HStack (alignment: .top) {
Text( "111") // Shall have equal Height
.background(Color.red)
VStack(alignment: .leading){. // of this VStack
Text("2222222")
.background(Color.gray)
Text("333333333")
.background(Color.blue)
}
}
.background(Color.yellow)}
}
Run Code Online (Sandbox Code Playgroud)
我试过,GeometryReader
但没有让它工作
如何在 SwiftUI 中显示文件对话框来选择目录或文件。
我认为使用 NSViewRepresentable 来包装 NSOpenPanel 是行不通的,因为它需要 NSView 而不是 NSPanel。
还有其他想法、提示或链接吗?我发现的一切都是关于 UIKit 的。
我需要将参数传递给calledFrom
SwiftUI 中的工作表。
奇怪的是,该参数并未在第一次调用时使用,但它适用于以下调用。
import SwiftUI
struct ContentView: View {
@State var showSheet = false
@State var calledFrom = -1
var body: some View {
ForEach((1...4), id: \.self) { i in
getButton(i)
}
.sheet(isPresented: $showSheet) { Dialog(calledFrom: calledFrom) }
.padding()
}
func getButton(_ i : Int) -> some View {
return Button("\(i)"){print("Button \(i) pressed"); calledFrom = i; showSheet = true }
}
}
struct Dialog: View {
var calledFrom : Int
@Environment(\.presentationMode) private var presentationMode
var body: some View …
Run Code Online (Sandbox Code Playgroud)