2

5つのタブがあるタブベースのアプリを作成しました。

3番目のタブバーアイテムの高さを他のすべてのタブよりも高くしたいと思います。

この3番目のタブバーアイテムのサイズは、常に他のタブよりも大きくなります。

タブベースのアプリでそれを行うにはどうすればよいですか?カスタムタブバーがなくても可能ですか?

助けてください

前もって感謝します

4

1 に答える 1

9

カスタム ビューまたはボタンをオーバーレイすることで、この効果を簡単に実現できます。この効果を実現するためにアプリケーションで行うことを次に示します (以下を参照)。追加のサブビューなしでこれを行うことは不可能だと思います。

UIButton *middleButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[middleButton addTarget:self action:@selector(tappedMiddleButton:) forControlEvents:UIControlEventTouchUpInside];

CGRect frame;
frame.size.height = 54;
frame.size.width = 72;
frame.origin.x = ceil(0.5 * (tabBarController.view.bounds.size.width - frame.size.width));
frame.origin.y = tabBarController.tabBar.bounds.size.height - frame.size.height;
[middleButton setFrame:frame];

[[tabBarController tabBar] addSubview:middleButton];

次に、呼び出されるメソッドを持つことができます:

-(void)tappedMiddleButton:(id)sender {

}

そのメソッド内で、タブ バーの選択されたインデックスを設定できます。

[tabBarController setSelectedIndex:2];
于 2013-02-04T00:57:07.057 に答える