Случайное отображение изображения с использованием rand () - PullRequest
0 голосов
/ 02 февраля 2010

Я просто играю с маленькими приложениями, пытаюсь изучить SDK и ObjC 2.

Я пытаюсь отобразить изображение случайным образом, и я продолжаю находить разные способы отображения изображения. Я загрузил изображение в папку ресурсов SDK.

В любом случае, вот мой код. Может ли кто-нибудь направить меня в правильном направлении.

#import "randomViewController.h"

@implementation randomViewController


//not sure if this is the right way to do it really.
NSArray *comImage = [NSArray arrayWithObjects:
      [UIImage imageNamed:@"rock.png"],
      [UIImage imageNamed:@"paper.png"],
      [UIImage imageNamed:@"scissors.png"],
      nil];


- (IBAction) randButton {
 int text = rand() % 3;
 switch (text) {
  case 0:
   textView.text = @"Rock";
   break;
  case 1:
   textView.text = @"Paper";
   break;
  case 2:
   textView.text = @"Scissors";
   break;
  default:
   break;
 }
}

Ответы [ 2 ]

1 голос
/ 02 февраля 2010

Я бы сделал это так:

NSArray *myImageNames = [NSArray arrayWithObjects:@"rock.png", @"paper.png", @"scissors.png", nil];
int index = arc4random() % [myImageNames count];

UIImage *myImage = [UIImage imageNamed:[myImageNames objectAtIndex:index]];
myUIImageView.image = myImage;

Очевидно, что вы можете держаться за myImageNames, чтобы вам не приходилось обновлять его каждый прогон, если вы сочтете это полезным.

Edit:
Понял. Смотрите обновленный код. Предполагается, что вы уже добавили UIImageView с именем myUIImageView к вашему представлению. Я полагаю, вы знаете, как это сделать, если на экране уже есть кнопка UIB.

Чтобы добавить UIImageView:

Объявите UIImageView * myUIImageView в вашем заголовке.
Поместите это в viewDidLoad, если вы используете xib:

myUIImageView = [[UIImageView alloc] initWithFrame:CGRectMake(x, y, width, height)];
[self.view addSubview:myUIImageView];

Заменить x, y, width и height на соответствующие значения. Они будут определять, где в представлении появляется UIImageView и насколько оно велико.

0 голосов
/ 02 февраля 2010

Для отображения изображений вы хотите добавить UIImageView и установить для его свойства image любое значение UIImage. Посмотрите на ответ Дэвида, чтобы узнать, как получить случайное изображение, используя objectAtIndex:, затем установите для этого свойства image вашего изображения.

...