2011-08-16 9 views
0

イメージをUIImageView.imageからmy barボタンに設定したいとします。私がmyBarButton.image = UIImageView.imageを実行したときに、バーボタンは正常に動作します(この例では@ "cameraImageButton.png"と同じですが、このUIImageは同じ@ "cameraImageButton.png"で構成されています)。ボタンは表示されません。ここでUIImageView.imageをUIBarButtonItemに設定する方法

は動作しないコードです:

UIBarButtonItem *cancelBarButton = [[ UIBarButtonItem alloc ] initWithTitle: @"Cancel" style: UIBarButtonItemStyleBordered target: self action: @selector(done)]; 
cancelBarButton.image = cancelImageView.image; 

そして、ここでは動作します(しかし、私はcancelImageViewから画像を設定したい)いずれかになります。

UIBarButtonItem *saveBarButton = [[ UIBarButtonItem alloc ] initWithTitle: @"Save" style: UIBarButtonItemStyleBordered target: self action: @selector(takePhoto)]; 
saveBarButton.image = [UIImage imageNamed:[NSString stringWithFormat:@"cameraImageButton.png"]]; 

//init for flexItem and cancelBarButton 

NSArray *items = [NSArray arrayWithObjects: cancelBarButton, flexItem, saveBarButton, nil]; 
[cameraToolbar setItems:items animated:NO]; 
+0

それはうまくいくはずです - cancelImageViewの画像がその時点で設定されていることは間違いありませんか? – jrturton

答えて

0

UIImageView.imageは、プロパティでありますオブジェクトではありません。 はUIImageViewクラス、またUIBarButtonItemクラスです。プロパティを設定するには、オブジェクトまたはnilだけを渡すことができます。

+0

ありがとうございました:)笑、愚かな私... – Vive

+0

あなたはこれ以上説明できますか?確かにcancelImageView.imageはUIImageオブジェクトを返しますか? – jrturton

+0

さて、何年も経ちましたが、私はこれを明確にする必要があります。 'UIImageView.image'は' UIImageView'のプロパティですが、明らかにオブジェクトでもあります。 – Vive

関連する問題