iPhone devの - のUIViewControllerのタイトル、tabBarItem、タグ
-
19-09-2019 - |
質問
私は5つのビューコントローラを管理UITabBarControllerを持っています。ビューがロードされる前に、彼らが表示されるように、私は彼らの「初期化」の方法で彼らのタブバーの項目を作成します。非常に多くの方法があるようですので、私はちょうど、私はそれを行う必要がありますどのような方法と思いまして。例えば、私のDatePickerViewControllerためます:
- (id)init {
if((self = [super init])) {
// ================ THIS ==========================
UIImage *clockIcon = [UIImage imageNamed:@"clockicon.png"];
UITabBarItem *localTabBarItem = [[UITabBarItem alloc]
initWithTitle:@"Date" image:clockIcon tag:0];
[self setTabBarItem:localTabBarItem];
[localTabBarItem release];
// ================ OR THIS ========================
[self setTitle:@"Date"];
UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
[localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
[self setTabBarItem:localTabBarItem];
[localTabBarItem release];
// ================ OR THIS ========================
UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
[localTabBarItem setTitle:@"Date"];
[localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
[self setTabBarItem:localTabBarItem];
[localTabBarItem release];
}
return self;
}
どっち私はそれを行う必要がありますか?そして、なぜtabBarItemとビューコントローラの両方のタイトルはありますか?そして、私は私が(最初の方法で設定されている)タグを必要としないと思います。
感謝!!
解決
さて、私の意見では、次のいずれかの方法を使用すると、1つの行にUIImageを宣言し、それをすべてのインラインを行うのではなく、別のラインでそれを設定したときに、それはより読めるかもしれない、OKですが、最後に、あなたは同じ結果を得ますます。
TabBarItemsはタブバー項目iteselfに表示されるテキストでタイトルを持っています。ビューコントローラは、設定されたときにビューコントローラのタイトルがNavigationControllersナビゲーションバーに表示され、ナビゲーションコントローラの目的のためにタイトルを持っています。そして、あなたはタグ、タグが必要です誰かがそれをクリックすると(uは自分でTabBarのを管理する場合)あなたは離れて、ボタンを伝える方法です。
他のヒント
タイトルを設定するには、いくつかの方法がある理由は、convieneceのためです。あなたは、ナビゲーションバーとタブバー内の1つのタイトルに1つのタイトルを表示したい場合があります。
この実際には非常に一般的なタブバーのテキストを表示するために、より少ないスペースがあるので。
ココアで多くのもののように、それを行うには複数の方法があります。あなたが心配する必要がある唯一の「正しさ」自分の状況に最も適したものです。