2016-05-10 10 views
0

私は自分の仕事を充実させるためにこのリンクをたどっています。私は私にしたいですUIActionSheetグレーの灰色です。しかし、ポストに続いて何も起こらない!私は他のものも試しました!! iPhone development: How to create colored or translucent background for UIActionSheet?UIActionSheetの背景が設定されていません

これまでのところ、私がやっていること:

追加UIActionSheetDelegateとの.mファイルのプロパティ

@property (strong, nonatomic) UIActionSheet *popupDelete; 

self.popupDelete = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Remove",nil]; 
    self.popupDelete.tag = sender.tag; 
    [self.popupDelete showInView:self.view]; 

.hファイルON 上記の記事で述べたようには、デリゲートメソッドを追加しました:

- (void)willPresentActionSheet:(UIActionSheet *)actionSheet 
{ 

     UIImage *theImage = [UIImage imageNamed:@"detail_menu_bg.png"]; 
     theImage = [theImage stretchableImageWithLeftCapWidth:32 topCapHeight:32]; 
     CGSize theSize = actionSheet.frame.size; 
     // draw the background image and replace layer content 
     UIGraphicsBeginImageContext(theSize); 
     [theImage drawInRect:CGRectMake(0, 0, theSize.width, theSize.height)]; 
     theImage = UIGraphicsGetImageFromCurrentImageContext(); 
     UIGraphicsEndImageContext(); 
     [[actionSheet layer] setContents:(id)theImage.CGImage]; 




} 

と画像detail_menu_bg.png:それを動作させるためにどのように

enter image description here

答えて

0

1.バックグラウンドイメージを表示するのではなく、背景色を使用する場合、アクションシートスタイルを使用して色を変更できます。

actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackOpaque 

か、そして、uは追加色

  • を設定することができますタイプを変更したくない2.Ifは

    actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackTranslucent; 
    

    QuartzCore.framework

コピーあなたのクラスの以下のメソッド

- (void)willPresentActionSheet:(UIActionSheet *)actionSheet { 
    [[actionSheet layer] setBackgroundColor:[UIColor grayColor].CGColor]; 
} 

問題がある場合は教えてください。

+0

何を提案しましたか?それでもうまく動作しませんが、willPresentActionsheetメソッドは@Madhuと呼ばれています – Fay007

+0

私たちの.hファイルとviewdidloadにこの#import "QuartzCore/QuartzCore.h"を作成したことがありますか?yourActionSheet.delegate = self; yourActionSheet.actionSheetStyle = UIActionSheetStyleBlackTranslucent、その非推奨 – Madhu

+0

@はい私は、私はその思いましたが代わりにactionsheetのuialertcontroller使用する必要があります。 – Fay007

関連する問題