2016-04-27 7 views
0

私は、インターフェースビルダーで作成されたUIPickerviewを持っています。コードを使って、私はそのサブビューとしてツールバーを配置し、ツールバーのバーボタンアイテムとして完了ボタンを配置しました。私は完了ボタンがクリックされたときにアクションを実行したい(ピッカービューといくつかの余分なものを隠す)。しかし何らかの理由で、完了ボタンのアクションが機能していません。次に、viewDidLoadにツールバーとバーボタン項目を作成するコードを示します。pickerviewに配置されているツールバー上のUIBarButtonItemの操作が動作しない

UIToolbar *toolBar= [[UIToolbar alloc] initWithFrame:CGRectMake(0,0,320,44)]; 
toolBar.barTintColor = [UIColor colorWithRed:70/250.0f green:70/250.0f blue:70/250.0f alpha:1.0]; 


UIBarButtonItem *barButtonDone = [[UIBarButtonItem alloc] initWithTitle:@"Done" 
                   style:UIBarButtonItemStyleDone target:self action:@selector(doneButtonTapped:)]; 


UIBarButtonItem *flexible = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]; 

toolBar.items = @[flexible, barButtonDone, flexible]; 
barButtonDone.tintColor=[UIColor colorWithRed:227/255.0f green:178/255.0f blue:49/255.0f alpha:1.0]; 
[picker addSubview:toolBar]; 
[picker bringSubviewToFront:toolBar]; 

そして、ここでの方法doneButtonTappedです:

-(void)doneButtonTapped:(UIBarButtonItem *)sender{ 

    NSLog(@"Done button tapped"); 
    picker.hidden = true; 
    [self.view bringSubviewToFront:txtCity]; 
    [self.view bringSubviewToFront:advancedSearchLine]; 
    [self.view bringSubviewToFront:txtCityLine]; 
} 

アプリを実行している間、私は、レイアウトデバッガで確認し、実際に行われ、ボタンは、ビューの前ではありません、そうすることの前には何もそれが動作しないようにする。私は間違って何をしていますか?

+0

はそれがトップアドオンツールバーで、ビューを取ると、あなたが –

+0

を追加いたしません。ありがとう –

+0

決して心はそれを得たpickerviewフォローツールバーとはどういう意味ですかピッカーフォローツールバー –

答えて

0

ツールバーをピッカービューのサブビューとして追加することはできません.UIViewのコンテナにツールバーとピッカーをサブビューとして追加します。あなたはpickerviewのサブビューとして追加されている

UIView *inputView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, screenWidth, toolBar.frame.size.height + picker.frame.size.height)]; 
inputView.backgroundColor = [UIColor clearColor]; 
[inputView addSubview:picker]; 
[inputView addSubview:toolBar]; 
関連する問題