Кнопки и изображения не добавляются в представление на устройстве (работает в симуляторе) - PullRequest
0 голосов
/ 25 марта 2011

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

Чтобы сделать это еще более странным. Отлично работает в симуляторе. Я приложил это изображение, чтобы помочь объяснить.

http://img847.imageshack.us/img847/1185/screenshot20110325at120m.png

Это не имеет никакого смысла для меня. Он работает в симуляторе, почему он не работает на устройстве?

- (void)viewDidLoad {
    [super viewDidLoad];
    imageV = [[UIImage alloc]init];
    imageV = [UIImage imageNamed:[NSString stringWithFormat:@"%@", imageTitle]];


    button = [UIButton buttonWithType:UIButtonTypeCustom];

    CGRect frame = CGRectMake(0, 0, 320, 65);
    button.frame = frame;   // match the button's size with the image size

    [button setBackgroundImage:imageV forState:UIControlStateNormal];




    [button addTarget:self action:@selector(adClicked:) forControlEvents:UIControlEventTouchUpInside];
    button.backgroundColor = [UIColor clearColor];
    [self.view addSubview:button];

    NSLog(@"%i %@", [self.view.subviews count], webLink);

}

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

// addScroller.m Я попытался очистить цель и добавить изображения непосредственно в папку приложения ... У меня ничего нет. Моя следующая ставка заключается в том, что это как-то связано с тем, что я загружаю его из файла plist или чего-то еще. Я переименовал папку с объявлениями, сделал ее строчной буквой и начал с нуля. будет ли plist причиной проблемы? это способ, которым я загрузил его, изменяя корпус файла или изменяя строки?

- (void)viewDidLoad {
    [super viewDidLoad];
    adIndex = 0;
    adTimer = [[NSTimer alloc]init];
    ad = [[Ad alloc]init];
    adsList = [[NSMutableDictionary alloc]init];
    item = [[NSDictionary alloc]init];
    filePath = [[NSString alloc]init];

        filePath = [[NSBundle mainBundle] pathForResource:@"Ads" ofType:@"plist"];
    NSLog(@"%@", filePath);
        adsList = [[[NSMutableDictionary alloc] initWithContentsOfFile:filePath]retain];

        for (int i = 0; i < [adsList count]; i++) {
            item = [[NSDictionary alloc]init];
            item = [adsList valueForKey:[NSString stringWithFormat:@"%i", i ]];
            ad = [[Ad alloc] initWith:[item objectForKey:@"adImage"] Link:[item objectForKey:@"website"]];

            //[ads addObject:a];

            ad.view.frame = CGRectMake(320 * i, 0, 320, 65);

            [adsView addSubview:ad.view];

            [item release];
        }
        [adsView setContentSize:CGSizeMake(320 * [adsList count], 65)];
        adsView.pagingEnabled = YES;

    adIndex = HBRandomInt([adsList count]);
    [self scrollAds];
   [NSTimer scheduledTimerWithTimeInterval:8.0 
                                 target:self 
                               selector:@selector(scrollAds) 
                               userInfo:nil
                                repeats:YES];
    //[adTimer release];
    //[ad release];
    //[item release];
    //[adsList release];

}

РЕДАКТИРОВАТЬ: я загрузил изображение в другом месте в приложении, и он работал нормально

Ответы [ 2 ]

0 голосов
/ 25 июня 2014

Симулятор (Mac) не чувствителен к регистру. Устройство есть. Это часто приводит к проблемам с загрузкой ресурсов на устройство, которое в симуляторе работает нормально.

0 голосов
/ 26 марта 2011

Не использовать [[NSString alloc] init];

Попробуйте NSString *filePath = nil;

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