2011-02-10 18 views
0

left/rightBarButtonItemUIBarButtonItemの場合、touchUpInsideエフェクトは表示されません。すなわち、ボタンの色が変化しなければならない。ここに何かを実装する必要はありますか?UIBarButtonItemのtouchUpInside効果

私は指を右のバーボタンに置​​いたときに色を変更できません。 UIBarButtonItemに背景色というプロパティはありません。これを達成する方法は?

答えて

3

UIBarButtonItemの色を変更できない場合は、ボタンがオンになっているUINavigationControllerTintを設定する必要があります。

UIBarButtonItemは、NavBarの色合いの色を継承します。 UIBarButtonStyleUIBarButtonSystemItemDoneに変更して、ボタンをnavBarの色味の濃い色にすることもできます。

また、UIBarButtonItemにはtouchUpInsideメソッドがありません。そのアクションはsetAction:でオーバーライドできます。ここで

UIBarButtonItemするためのオプションのいくつかされています

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] init]; 

    /* make the back button an image */ 
    [backButton setImage:[UIImage imageNamed:@"anImage.png"]]; 

    /* change the title for child views */ 
    [backButton setTitle:@"Go Back!"]; 

    /* tell the button to do something */ 
    [backButton setAction:@selector(doSomething:)]; 

    /* disable the button */ 
    [backButton setEnabled:NO]; 

    /* make this button the BACK button for nav controller */ 
    self.navigationItem.backBarButtonItem = backButton; 

    /* create this button on the RIGHT side of the navBar */ 
    self.navigationItem.rightBarButtonItem = backButton; 

[backButton release]; 
1

UIBarButtonItem代わりに、彼らは彼らだけが活性化される時に定義するターゲットとアクションを持っている、touchUpInsideを使用しないでください。

+0

私はそれを持っていますが、私は指にボタンを置くと色を変えることができません。 UIBarButtonItemに背景色というプロパティはありません。これを達成する方法は? – Abhinav

+0

@Abhinavは私の答えを読んだ。 – WrightsCS

関連する問題