前提・実現したいこと
画像に合わせてUIImageVIEWを表示させたいのですが、
以下のエラーメッセージにより出来ない状態です。
ちなみになぜ画像に合わせたいかというと、
UIImageViewを角丸設定にしたのですが、
画像がUIImageViewより小さくなると
画像が角丸にならないからです。
宜しくお願い致します。
発生している問題・エラーメッセージ
'release' is unavailable: not available in automatic reference counting mode 【翻訳】 'release'は利用できません:自動参照カウントモードでは使用できません
該当のソースコード
objective
1 2#import "ViewController.h" 3 4@interface ViewController () 5 6@property (weak, nonatomic) IBOutlet UIImageView *imageView; 7 8@end 9 10@implementation ViewController 11 12- (void)viewDidLoad { 13 [super viewDidLoad]; 14 // Do any additional setup after loading the view, typically from a nib. 15 16 // //UIImageViewの生成 17 UIImage *image = [UIImage imageNamed:@"mm2"]; 18 // UIImageのサイズを取得 19 CGSize imageSize = image.size; 20 // UIImageViewの生成 21 UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; 22 imageView.frame = CGRectMake(0, 0, imageSize.width, imageSize.height); 23 imageView.center = CGPointMake(170, 340); 24 imageView.tag = 10; 25 imageView.contentMode = UIViewContentModeScaleAspectFit; 26 [imageView layer].masksToBounds = YES; 27 [imageView layer].cornerRadius = 10; 28 [self.view addSubview:imageView]; 29 30} 31 32- (void)didReceiveMemoryWarning { 33 [super didReceiveMemoryWarning]; 34 // Dispose of any resources that can be recreated. 35} 36 37@end 38
試したこと
エラーの分を翻訳してみたのですが、
自分の理解力ではわからなかったです。
またはViewいっぱいに画像を表示させる為には
①UIViewContentModeScaleAspectFill
②UIViewContentModeScaleAspectFit
のほうが良いかとは思ったのですが、
①Fillの場合は縦長画像の場合上としたがはみ出て見れない部分が出てくる
②Fitの場合で例えばViewより画像の幅が短いとViewを角丸にしても
画像は角丸にならない
という問題点が出てきました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
質問のコードだと、UIImageViewのサイズは画像のサイズと同じになるので、「はみ出て見れない部分が出てくる」とか「Viewより画像の幅が短い」ということにはならないと思うのですが。
はい。なのでエラーメッセージにより出来ない状態です。と質問致しました。そこに対する回答をいただければ幸いです。
ちょっと何を言っているのかよく分からないのですが、_Kentarouさんの回答にある「[imageView release];を削除」で解決ということでしょうか?
質問させて頂いたコードではエラーが出てビルドが出来ませんという意味ですが、それは質問内容の上部の2行にある通りです。角丸にならなくなってしまったので今回のコードを書いたのですが、エラーになりましたどうしたらよいですか?という質問に対して、「質問のコードだと角丸にならないと思うのですが」という回答を求めていたのではなく、_Kentarouさんの回答のようにエラーに対してどうすべきかの回答が欲しかったので解決済です。ありがとうございました。
回答1件
あなたの回答
tips
プレビュー