Создание объекта на позиции в XCode - PullRequest
0 голосов
/ 20 апреля 2011

Что такое код, когда вы хотите создать экземпляр объекта (например, пули) в определенной позиции на экране? Я попробовал это сам и искал в Интернете, но нет хороших примеров или базовых обучающих программ по XCode, которые объясняют это Я не использую Cocos2d. Помощь очень ценится :) Заранее спасибо!

//
//  CoreViewController.m
//  Core
//
//  Created by user on 29-04-11.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import "CoreViewController.h"

@implementation CoreViewController

@synthesize ship;
@synthesize bullet;


-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{

    UITouch *touch = [[event allTouches] anyObject];
    if ([touch view] == ship){

        //ship
        CGPoint location = [touch locationInView:self.view];
        ship.center = location;
    }

}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *touch = [[event allTouches] anyObject];
    if ([touch view] == ship){

        //bullet
       // CGPoint blltPos = bullet.center;
        CGPoint shpPos = ship.center;
      //  blltPos.x = blltPos.x += 3;
       // bullet.center = blltPos;

        UIImage *bulletImage = [UIImage imageNamed:@"bullet.png"];
        UIImageView *imageView = [[UIImageView alloc] initWithImage:bulletImage];
        imageView.frame = CGRectMake(shpPos.x, shpPos.y, 60, 60);
    }


}

@end

Ответы [ 2 ]

3 голосов
/ 20 апреля 2011

Если вы используете UIKit:

  1. Создайте UIImageView, который содержит UIImage маркера.
  2. Установите для рамки UIImageView желаемое местоположение (смещение по центру) и размер изображения.

Быстрый пример:

UIImage *bulletImage = [UIImage imageNamed:@"bullet.png"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:bulletImage];
imageView.frame = CGRectMake(xLoc, yLoc, bulletImage.size.width, bulletImage.size.height);
0 голосов
/ 29 октября 2011

Возможно, вы уже поняли это, но чтобы добавить новый UIImageView к родительскому представлению, возможно (?) CoreViewController, вам нужно будет сделать что-то подобное после того, как вы сделали то, что написал Марк:

[self.view addSubview:imageView];

или

[self.view insertSubview:imageView atIndex:0];

В последнем примере вы решаете его z-позицию (atIndex) подпредставлений, т.е. если вы хотите, чтобы он был впереди или позади других подпредставлений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...