2010-11-30 10 views
0

私のiPhoneアプリケーションの各ビューの上に幅133ピクセル、高さ150ピクセルの2つのボタンを追加したいとします。このボタンバーの下にあるビューだけが変更されますが、ナビゲーションが発生すると(プッシュポップ操作)、このバーも残りのビューと共にスライドします。 基本的に、私は2つのボタンを含むバーは、アプリの常に画面に存在するようにしたい。私を助けてください。ありがとうiPhoneのすべてのビューの上にボタンを追加したい

+0

あなたが一番上にあるナビゲーションバーで 'UINavigationController'を使用して、バーの下にあなたのボタンが欲しいかあなたはあなたのボタンを持つようにしたいんされていますナビゲーションバー? –

+0

いいえ、ナビゲーションバーを使用していますが、すべての画面で非表示になっていますので、代わりにこのバーが表示されます – Nishit

+0

なぜこれをやっていますか?確かに、ナビゲーションバーに必要なすべての機能が備わっていますか? –

答えて

2

あなたがのUIViewControllerのサブクラスを書いオフ最善だろう(例えばCustomUIViewControllerそれを呼び出します)。あなたは適切な例としてビューを追加することができ、このクラスのviewDidLoadメソッドで

- (void)viewDidLoad { 
    UIView *bar = [[[UIView alloc] initWithFrame:CGRectMake(0,0,self.view.frame.size.width,28)] autorelease]; 
    UIButton *buttonOne = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    // etc... 
    [bar addSubview:buttonOne]; 
    UIButton *buttonTwo = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    // etc... 
    [bar addSubview:buttonTwo]; 

    [self.view insertSubview:bar atIndex:0]; 
} 

限り、あなたはすべてのあなたのクラスで[super viewDidLoad]を呼び出すために覚えている(動作するはず

を今、あなたは。ちょうどあなたがあなたのビューコントローラに代わりのUIViewControllerのCustomUIViewControllerをサブクラス化していることを確認する必要があります。

編集

これを行うに動作するナビゲーションバーのオプションを取得するには

UIBarButtonItem *cancel = [[[UIBarButtonItem alloc] initWithTitle:@"Cancelsdkjfnsdjfhksdjfhks" style:UIBarButtonItemStylePlain target:self action:@selector(cancel:)] autorelease]; 
    [self.navigationItem setLeftBarButtonItem:cancel]; 
    UIBarButtonItem *send = [[[UIBarButtonItem alloc] initWithTitle:@"Senddsfsdfsdfsdfsdfsdf" style:UIBarButtonItemStylePlain target:self action:@selector(send:)] autorelease]; 
    [self.navigationItem setRightBarButtonItem:send]; 

    self.navigationItem.titleView = [[[UIView alloc] init] autorelease]; 
+0

答えをありがとう、これは確かに1つの可能性がありますが、UINavigationBarでUIBarButtonItemsとして長いボタンを追加する方法の解答を提供することができます – Nishit

+0

私はinitWithCustomView:uibuttonによってnavigationBarでこのアプローチを試しましたボタンのイメージで、タイトルではありません。これは動作していません。ナビゲーションバーが空白 – Nishit

+0

私はそれが働いた、あなたは目標とアクションセットを設定し、原点0,0としてボタンのフレームを設定するボタンを初期化する必要があります。 initWithCustomView:buttonでbarButtonを初期化します。方向を示してくれてありがとう。 – Nishit

-1

ボタンを含むビューをレイアウトすることから始めます。 Xcodeで、新しいViewベースのiPhoneアプリケーションを作成し、それを「GradientButtons」(または何でも好きなもの)と呼んでください。 Interface BuilderでGradientButtonsViewController.xibリソースをダブルクリックして開きます。

UIButtonコントロールをライブラリからビューにドラッグします。このようにそのプロパティを設定します。

* Change the type to "Custom" 
* Set the title to "Gray" 
* Change the text color to white 
* Change the background color to gray 
+0

あなたは私の質問を持っていませんでした。私はそのサブビューとして2つのボタンを含むバーを追加したいと思います。このバーは、アプリのすべてのビュー/画面に表示されるはずです。質問を参照してください – Nishit

関連する問題