它們的標籤由具有7段的UISegmentedControl驅動的函數改變了24個按鈕。還有一個UIPickerView有9個不同的對象。這兩個動態地改變按鈕的標籤。然後,當按下按鈕時,我必須知道所選的UIPickerView對象,UISegmentedControl選項和哪個按鈕。將字符串轉換爲IBOutlet UIButton對象名稱
我的接收和執行功能是這樣的:
- (int)ButtonPlayController:(int)buttonPressed {
NSString *button = [NSString stringWithFormat:@"%@%i", @"button", buttonPressed];
if (button.titleLabel.text == @"1C") {
[self Play1C];
}
else if .....
}
的函數接收數(按鈕數目),並結合了字符串名稱來創建UIButton
名,例如如果函數接收數字8則UIButton
名字是button8
(我已經在我的.h文件:IBOutlet UIButton *button8;
)
我記得對象C的PHP這些工作,但什麼?我需要改變這個工作?
[obj-c中字符串的變量名稱]的可能重複(http://stackoverflow.com/questions/3164860/variable-name-from-string-in-obj-c) –
另請參見:[Obj-C相當於PHP的「變量變量」](http://stackoverflow.com/questions/2283374/objective-c-equivalent-of-phps-variable-variables)。此外還:http://stackoverflow.com/questions/8090590/is-this-possible-to-call-variable-dynamically-in-objective-c和從那裏鏈接的問題。 –