我有一个NSTextField
,我需要将字段的值转换为变量。什么是合适的方法?
答案 0 :(得分:114)
对于NSString
您将使用:
NSString *myString = [theTextField stringValue];
对于int
您将使用:
int myInt = [theTextField intValue];
还有许多其他方法可以从控件中获取值。在"Getting and Setting the Control’s Value" section。
下查看NSControl
参考了解更多信息
这是一个清单:
doubleValue
floatValue
intValue
integerValue
objectValue
stringValue
attributedStringValue
答案 1 :(得分:4)
Swift 3.x版本:
class home: UIViewController {
@IBOutlet weak var fiveth1: UILabel!
@IBOutlet weak var iron1: UILabel!
@IBOutlet weak var gold1: UILabel!
@IBOutlet weak var ships1: UILabel!
@IBOutlet weak var empires1: UIWebView!
@IBOutlet weak var webViewG: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let htmlPath1 = Bundle.main.path(forResource: "WebViewContent2", ofType: "html")
let htmlURL1 = URL(fileURLWithPath: htmlPath1!)
let html1 = try? Data(contentsOf: htmlURL1)
self.webViewG.load(html1!, mimeType: "text/html", textEncodingName: "UTF-8", baseURL: htmlURL1.deletingLastPathComponent())
if (Fiveth.value(forKey: "Fiveth") != nil){
fiveth = Fiveth.value(forKey: "Fiveth") as! NSInteger!
fiveth1.text = NSString(format: "Fiveth: %i", fiveth) as String
}
fiveth1.text = "\(Fiveth)"
}
答案 2 :(得分:3)
[myField stringValue]
NSTextField
继承自NSControl
,NSControl
定义stringValue
/ setStringvalue:
方法。
答案 3 :(得分:0)
此外:
假设您有一个对象(MyObject
)希望在有人输入NSTextField
时收到通知。在.h文件中,MyObject
应声明它符合NSTextFieldDelegate
,如... {/ p>
@interface MyObject : NSObject <NSTextFieldDelegate>
然后将MyObject设置为NSTextField
[myTextField setDelegate:myObject]
现在,您可以通过在MyObject中实现方法来了解文本字段中发生的事情,如:
-(void)controlTextDidEndEditing:(NSNotification *)aNotification;
-(void)controlTextDidChange:(NSNotification *)aNotification;
-(void)controlTextDidBeginEditing:(NSNotification *)aNotification;