2013-03-14 64 views
0

我想創建一個字符串來代替按鈕的名稱。使用字符串變量代替按鈕名稱

例如,我想以編程方式設置按鈕的背景。但是我想要這個名字來自一個字符串變量。這樣,如果我想改變名爲 Button1的按鈕的背景圖像,我可以將「Button1」放入我的NSString中,並將其稱爲myButton ...,然後將實際的Button1作爲「myButton」引用

我這樣做?

+0

你能表現出一定的代碼你到目前爲止嘗試過嗎?也許我們可以找到一個簡單的語法/邏輯錯誤來阻止它的工作。 – 2013-03-14 02:47:48

+0

你能澄清這裏發生了什麼嗎?有一個名爲'setBackgroundImage:forState:'的方法可以使用。 [這篇文章有更多的細節。](http://stackoverflow.com/questions/4608454/setting-a-background-image-for-uibutton) – aqua 2013-03-14 02:52:47

回答

1

這對我來說不是很清楚你到底想做什麼,但我會嘗試猜測。

假設你有一個IBOutlet引用UIButton這樣

您可以使用KVC改變該按鈕的價值給出的屬性名稱

@implementation MyViewController 

- (void)changeBackgroundOfButtonNamed:(NSString *)buttonName { 
    UIButton * button = [self valueForKey:buttonName]; 
    // Change the background 
    // ... 
} 

- (void)whatever { 
    [self changeBackgroundOfButtonNamed:@"myButton"]; 
} 
+0

這正是我問的:)。對不起,我的不好解釋。謝謝! – user1824518 2013-03-14 02:57:00

+0

不用客氣。 – 2013-03-14 02:57:35