представление цели С не загружается на физическое устройство - PullRequest
1 голос
/ 03 февраля 2012

Я использую XCode 4.2 для разработки приложения для iPhone и iPad

Я загружаю вид, используя следующую функцию

-(IBAction)button{
    ...
    SettingsView *hello ;   
    hello= [[SettingsView alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:hello animated:YES];
}

на симуляторе вид загружается отлично. но когда я загружаю приложение на настоящий iPhone, я получаю белый экран и не могу вернуться к приложению ... по каким-либо причинам?

Ответы [ 3 ]

2 голосов
/ 03 февраля 2012

Наиболее распространенной причиной такого рода проблем является несоответствие регистра. так как вы передали nil в качестве имени, он попытается загрузить SettingsView.nib. Если ваш файл называется Settingsview.nib (обратите внимание на «v»), то это будет работать на Mac (большую часть времени и на симуляторе), но не на iOS. По умолчанию Mac имеет нечувствительную к регистру файловую систему. iOS всегда имеет чувствительную к регистру файловую систему.


После того как вы скомпилировали устройство, перейдите на ~/Library/Developer/Xcode/DerivedData и найдите выходные данные своего проекта. Перейдите в каталог Products и убедитесь, что ваш nib-файл действительно там и назван так, как вы ожидаете.

1 голос
/ 03 февраля 2012

, если с ним не связан .xib, тогда используйте этот код:

SettingsView *hello= [[SettingsView alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:hello animated:YES];
[hello release];

, если с ним связан .xib

SettingsView *hello= [[SettingsView alloc] initWithNibName:@"SettingsView" bundle:nil];
[self presentModalViewController:hello animated:YES];
[hello release];
0 голосов
/ 06 февраля 2012

попробуйте установить представление frame и modalPresentationStyle

SettingsView *hello= [[SettingsView alloc] initWithNibName:@"SettingsView" bundle:nil];

hello.view.frame = CGRectMake(<CGFloat x>, <CGFloat y>, <CGFloat width>, <CGFloat height>)
hello.modalPresentationStyle = UIModalPresentationFormSheet;

[self presentModalViewController:hello animated:YES];
[hello release];

И откуда (что такое я ??) вы пытаетесь представить modalviewcontroller ??

...