2012-06-30 2 views
-5

Это мой первый вопрос о переполнении стека, поэтому я надеюсь, что я достаточно ясен.Показать объекты на экране iPhone по коду

Я разрабатываю игру для iPhone, и у меня возникают проблемы с отображением некоторых объектов. У меня есть NSMutableArray объектов (пользовательский класс объектов, который подклассифицирует UIImageView), и я хочу иметь возможность отображать их на экране. Однако массив может изменять размер, поэтому я не могу напрямую связать каждый элемент в построителе интерфейса. Кто-нибудь знает, как я могу решить эту проблему?

Спасибо!

Кодекс:

//This code is in the viewController.m file 
//The main array of objects is nodeList. Each node subclasses UIImageView. 
//nodeList was also synthesized at the beginning of the file with @synthesize. 


//initialize array 
nodeList= [[NSMutableArray alloc] initWithCapacity:(vertLinks*horizLinks)]; 

//make center node 
Node *n = [Node alloc]; 

//Initialize the node (just puts an x and y position in, and gives it a mass) 
[n nodeInit:(startX):(startY):(nodeMass)]; 
[nodeList addObject:(n)]; 

//creates a 'web' of nodes, and adds each one to the array 
for (int i = 1; i < vertLinks; i++) 
{ 
    for (int j = 0; j < horizLinks; j++) 
    { 
     //draw the line to each point 
     int nodeX = (startX + cos(((360/horizLinks) * j) * (M_PI/180)) * rad * i); 
     int nodeY = (startY + sin(((360/horizLinks) * j) * (M_PI/180)) * rad * i); 

     //add it to the screen 
     Node *nd = [Node alloc]; 

     [nd nodeInit:(nodeX):(nodeY):(nodeMass)]; 

     if (i == vertLinks - 1) 
     { 
      nd.solid = true; 
     } 

     [nodeList addObject:(nd)]; 
    } 
} 
+4

Ваш вопрос непонятен. Какие «объекты» это? Чем яснее ваш вопрос, тем легче нам помочь. –

+0

Опубликовать код – Bazinga

+0

http://stackoverflow.com/faq#howtoask :) – thndrkiss

ответ

0

Любопытное трудно ответить точно, но по существу вам нужно перебрать объекты в массиве, и каждый файл по отдельности. Если эти объекты представляют собой виды, как UIView, UIImageView или UIButton, то вы можете просто сделать следующее:

for (int i=0; i<array.count; i++) { 
    UIView *thisView = [array objectAtIndex:i]; 
    [self.view addSubview:thisView] 
} 

Если строки или числа, или что-то, то вам нужно создать ярлык или текстовое поле или что-то отображать объекты.

for (int i=0; i<array.count; i++) { 
    NSString *string = [array objectAtIndex:i]; 
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(100, 100*i, 100, 100)]; 
    [label setTitle:string]; 
    [self.view addSubview:label] 
} 

Действительно, какой тип объекта вы говорите. Вы должны сказать нам, какие это изображения, если вам нужна реальная помощь. Это также просто правильный способ публикации.

Пожалуйста, разместите более подробную информацию, и я буду рад продолжить мой ответ.

+0

Спасибо! Это именно то, что мне нужно! – vavskjuta

Смежные вопросы