2011-07-20 49 views
2

次のコードをナビゲーションバーのタイトル付きのカスタム戻るボタンに使用しています。しかし、タイトルは表示されていません、どんな助け?タイトルがUIButtonに表示されない

nb:バックボタンの画像は黒で、デフォルトでiosによって使用されているのと同じものです。アクションハンドラをカスタマイズするために必要なのはなぜですか?

backButton=[UIButton buttonWithType:UIButtonTypeCustom]; 
[backButton setImage:[UIImage imageNamed:@"backbutton.png"] forState:UIControlStateNormal]; 
[backButton setImage:[UIImage imageNamed:@"backbutton.png"] forState:UIControlStateSelected];  
[backButton addTarget:self action:@selector(customBack) forControlEvents:UIControlEventTouchUpInside]; 
[backButton setFrame:CGRectMake(0,0,64,32)]; 
[backButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
[backButton setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; 
[backButton setTitle:@"Encameo" forState:UIControlStateNormal]; 
[backButton setTitle:@"Encameo" forState:UIControlStateSelected]; 

self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc] initWithCustomView: backButton]; 
+0

のようなコードは、これをチェックしてください。 http://stackoverflow.com/questions/2681321/uibarbuttonitem-with-custom-image-and-no-border/2681430#2681430 – Trevor

答えて

10

ボタンでイメージを設定する代わりに、UIButtonのbackgroundImageを設定すると、タイトルが表示されます。

変更は、この

backButton=[UIButton buttonWithType:UIButtonTypeCustom]; 
[backButton setBackgroundImage:[UIImage imageNamed:@"backbutton.png"] forState:UIControlStateNormal]; 
[backButton setBackgroundImage:[UIImage imageNamed:@"backbutton.png"] forState:UIControlStateSelected];  
[backButton addTarget:self action:@selector(customBack) forControlEvents:UIControlEventTouchUpInside]; 
[backButton setFrame:CGRectMake(0,0,64,32)]; 
[backButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
[backButton setTitleColor:[UIColor whiteColor] forState:UIControlStateSelected]; 
[backButton setTitle:@"Encameo" forState:UIControlStateNormal]; 
[backButton setTitle:@"Encameo" forState:UIControlStateSelected]; 

self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc] initWithCustomView: backButton]; 
+0

ありがとう、それは魅力のように働いていた...この解決策を知っていた。忘れてしまった!!! – Ahsan

+0

通常の状態と選択した状態の両方で同じタイトルの色とタイトルを使用している場合は、通常の状態で宣言しても十分です – Dejell

関連する問題