iOSのアクションシートに画像を追加する方法はありますか?アプリストアやリンゴミュージックアプリでリンゴと同じです。リンゴのドキュメントの私の基本的な検索では、私はサブクラスを作っていないか、アクションシートにサブビューを追加していません。アクションシートiOSの各オプションの画像
"UIActionSheetはサブクラス化されていません。また、階層にビューを追加する必要もありません。" - アップルのドキュメント
iOSのアクションシートに画像を追加する方法はありますか?アプリストアやリンゴミュージックアプリでリンゴと同じです。リンゴのドキュメントの私の基本的な検索では、私はサブクラスを作っていないか、アクションシートにサブビューを追加していません。アクションシートiOSの各オプションの画像
"UIActionSheetはサブクラス化されていません。また、階層にビューを追加する必要もありません。" - アップルのドキュメント
UIActionSheet
は、iOSの8.3以降廃止されました。 UIAlertController
およびそのUIAlertAction
を使用してください。 Add Image to UIAlertAction in UIAlertController
UIAlertController
には、UIActionSheet
と同じ制限があります。実際にレイアウトをカスタマイズする方法はありません。
SDCAlertViewのようなライブラリをチェックして、より機能的なカスタマイズオプションと機能的に同等の機能を提供したい場合があります。あなたはこのような何かをする必要があるアクションシートに画像を追加するには
...
スウィフト
let image = UIImage(named: "myImageName")
let action = UIAlertAction(title: "Action 1", style: .default, handler: nil);
action.setValue(image, forKey: "image")
のObjective C
UIAlertAction* action = [UIAlertAction actionWithTitle:@"Action 1" style:UIAlertActionStyleDefault handler:nil];
[action setValue:[[UIImage imageNamed:@"myImage.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] forKey:@"image"];
乾杯:)
この種の解決策の問題は、リンゴを変更してsetImage "image"からコードのsetImgにメソッドの名前を変更しようとすると、クラッシュが開始されるとします。 #selectorを使用して保護することはできますが、安全な選択肢はまだありません。 – AAV
その素晴らしい解決策しかし、そのハック。 – AAV
その後、同じ方法でスタイリングするボタン付きのカスタムコントローラ以外のソリューションはありません。 – ryancrunchi