オブジェクト名として配列項目を試しています。
私は5UIImageView
秒を設定しました:
@interface miniTestViewController : UIViewController {
NSArray *array;
IBOutlet UIImageView *sun;
IBOutlet UIImageView *moon;
IBOutlet UIImageView *rain;
IBOutlet UIImageView *snow;
IBOutlet UIImageView *hail;
}
-(IBAction)fadeChosenImage:(id)sender;
私のplistには、太陽、月、雨、雪、雹などの画像名の配列が含まれています
.m VDL スタブでは、この plist が に読み込まれますNSArray *array
。
UIButton
タグはインデックスでオブジェクトを選択します:
-(IBAction)fadeChosenImage:(id)sender{
NSString *image = [[NSString alloc] init];
image= nil;
switch ([sender tag]) {
case 0:
image = [array objectAtIndex:[sender tag]];
break;
case 1:
image = [array objectAtIndex:[sender tag]];
break;
case 2:
image = [array objectAtIndex:[sender tag]];
break;
case 3:
image = [array objectAtIndex:[sender tag]];
break;
case 4:
image = [array objectAtIndex:[sender tag]];
break;
default:
break;
}
次のように、をオブジェクト名NSString
として使用する必要があります。UIImageView
[[array objectAtIndex:[sender tag]] setAlpha:0];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:6.0];
[[array objectAtIndex:[sender tag]] setAlpha:1];
しかし、これまでのところ、メッセージに応答しないobjectAtIndex
a を返します。NSString
setAlpha
NSString
をオブジェクト名に変換/ラップ/キャスト/使用することは可能ですか?UIImageVIew
助けてくれてありがとう。