對於iOS編程和Objective-C,我一般都很陌生,所以這個問題可能已經被問過很多次了。總之:在iOS中對UIButton進行編碼時避免重複代碼
在我的iOS應用程序,我有我創建如下方式幾個UIButtons:
UIButton *webButton = [UIButton buttonWithType:UIButtonTypeCustom];
[webButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
webButton.frame = CGRectMake(10, 315, 300, 44);
[webButton setBackgroundImage:[UIImage imageNamed:@"WebButton.png"] forState:UIControlStateNormal];
[webButton setBackgroundImage:[UIImage imageNamed:@"WebButtonPressed.png"] forState:UIControlStateHighlighted];
因爲我希望按鈕的標題是容易編輯,我再加入UILabels的按鈕,而不是讓它們成爲用作按鈕背景圖像的圖像的一部分。
UILabel *webLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 14, 300, 15)];
webLabel.text = @"Some website";
webLabel.font = [UIFont boldSystemFontOfSize:16.0];
webLabel.textColor = [UIColor colorWithRed:62.0/255 green:135.0/255 blue:203.0/255 alpha:1];
webLabel.textAlignment = UITextAlignmentCenter;
webLabel.backgroundColor = [UIColor clearColor];
[webButton addSubview:webLabel];
[webLabel release];
當你每次想要創建一個新按鈕時都必須經過這個過程,這會變得非常單調乏味。什麼是簡化這個過程的最好方法,所以在編碼按鈕時我不必一遍又一遍地重複自己。
謝謝。
約一個簡單的子程序?沒有真正需要花哨的子類或任何東西,只需將大部分邏輯放在常見的例程中。 –
如果您重複使用相同的顏色,您可以製作一份並共享它。 –