1. æ
1136 x 640pixelsÅæðì��·éB
(1) Splash Screen
[email protected]
[email protected]
|CgF
"@2x"ÌOÉ��ñ"-568h"ðt¯éB
"@2x"ÍA640x960pixelsÌhigh-resolusion(Retina Display)𦷪A4C`ÌiPhone5pÌæt@C¼ÉÍA"-568h"ðt¯éB568ÍAmainScreenÌt[TCY̳A"h"Íhightð¦·B
Splash ScreenÍAXcodeÌTARGETS�NSummary�NLaunch Image�N"Retina (4-inch)"ÉÝè·éB
2. xib
(1) MainWindow.xibðJ«AXcodeEyCÌDocument Outline©ç"Window"ðIðB
(2) Utilities©çAttributes inspectorðJ«ASimulated MetricsÌsizeð"Retina 4 Full Screen"ÉÝèBwindowªc·ÉÈéÌðmF·éB
(3) Document Outline©ç"Tab Bar Controller"ðIðB
(4) Utilities©çAttributes inspectorðJ«ASimulated MetricsÌsizeð"Retina 4 Full Screen"ÉÝèBTab Bar Controllerªc·ÉÈéÌðmF·éB
ãLÝèðsíÈ��ÆAæÊºª^b`ÌæÆF¯³êÈ��½ßA^b`µÄà½Ì½àµÈ��B
Navigation ControllerðgpµÄ��éêAMainWindow.xib̺wÉ éxibÌViewðAMainWindow.xibƯlÉSimulated MetricsÌsizeð"Retina 4 Full Screen"ÉÝè·é�}ƪūéªA�}ÌÝèÍsvB
MainWindow.xibÌ"Retina 4 Full Screen" SizeÝ誺wÌxibÉàø«pªêéB
ãLÌæ¤Ésizeð"Retina 4 Full Screen"ÉÝèµ½êÉ�N��ÄàA3.5C`Ì]ÌðxÌiPhoneÌæÊ\¦ÉÍe¿ð^¦é�}ÆÍÈ��BiOS¤Å©®IÉæÊTCYª²®³êéBiÀÛÉÍ^b`Ìæª4inchƵ½ªAºûüÉg��³êéBj
xibÌC³ÉÂ��ÄÍAshouldAutorotateToInterfaceOrientation\bhªdeprecatedÆÈÁ½e¿ÅAºLQlLÌÊèAMainWindow.xib©çN®µÈ��æ¤É·é½ßAæÊñ]Îðs¤ÌÅ êÎηéKvÍÈ��BMainWindows.xibÍgpµÈ��ÌÅí·éB
iOS6ÅUITabBarControler+UINavigationControllerÌAvÉæÊñ]ðÀ·é
MainWindow.xibðgíÈ��AvN®
3. class
(1) IuWFNgzu
vOÅ{^ÈÇðzuµÄ��éêAframe̳©ç4C`æÊÅ é�}Æð»èµÄIuWFNgðzu·éÊuðè·éB
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { // iPad
// iPadÌÆ«Ì
} else { // iPhone
CGRect frame = [[UIScreen mainScreen] applicationFrame];
if (frame.size.height==548.0) { // iPhone 4inch (568 - 20 px)
// iPhone5 ÌÆ«Ì
} else { // iPhone 3.5inch
// iPhone5æèOÌf ÌÆ«Ì
}
}
ãLÌáÍ4inchÅ éiPhone5Ì»èðAt[ª548.0Š驯µÄ��éªAViewÌTCYÝèÉæèKXÏX·éBãLÌáÅÍAViewð(x:0, y:20, Width:320, Height:460)ɵÄ��é½ß20pixcelsø��½lɵÄ��éB
iPhone5Í1,136 x 640PixcelsÈÌÅA1,136Æ��¤lÅ»è·é�}ÆàÅ«éB
CGSize result = [[UIScreen mainScreen] bounds].size; // iPhone5ÌêAresult.heightÍ568px
CGFloat scale = [UIScreen mainScreen].scale;
result = CGSizeMake(result.width * scale, result.height * scale); // iPhone5ÌêAresult.heightÍ1136px
if (result.height==1136.0) { // iPhone 4inch
// iPhone5 ÌÆ«Ì
} else {
// iPhone5æèOÌf ÌÆ«Ì
}
(2) ANVV[gyÇL èz
UIActionSheetÉæèIðªòæÊiANVV[gjð\¦·éêAMainWindow.xibÌWindowÉSizeÝèÉ"Retina 4 Full Screen" Ƶ½�}ÆÉæée¿ª��·éB
4inchÌiPhone5ÅÍAºLÌæ¤È
[actionSheet showInView: self.view.window];]ÌR[hÅàâèÈæÊº©çANVV[gª¹èoµÄéªA3.5inchÌ]æÊTCYÌiPhoneÅÍMainWindow.xibÌWindowð4inchÉÝèµ½e¿ÉæèAANVV[gª©½ÚÌæÊæèຩç¹èãªÁÄ\¦³êéB
�}̽ßAãL(1)ƯlÉAæÊ̳ð»èµÄðU誯éB
UIActionSheet *actionSheet = [[[UIActionSheet alloc]3.5inchÅÌiPhoneÌêÍA320 x 480ÌViewðìèA�}ÌView©çANVV[gð\¦·éæ¤É·éB
initWithTitle: @"Select Action"
delegate: self
cancelButtonTitle: NSLocalizedString(@"Cancel", nil)
destructiveButtonTitle: nil
otherButtonTitles:
@"Hoge",
@"Fuga", nil]
autorelease];
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { // iPad
[actionSheet showFromRect:CGRectMake(334.0, 865.0, 100.0, 42.0) inView:self.view animated:YES];
} else {
CGRect frame = [[UIScreen mainScreen] applicationFrame];
if (frame.size.height==548.0) { // iPhone 4inch (568 - 20 px)
[actionSheet showInView: self.view.window];
} else { // iPhone 3.5inch
UIView *actionSheetsubView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
[actionSheet showInView: actionSheetsubView];
}
}
yÇLz
UIActionSheetÅViewª¸êé»ÛÉÂ��ÄÍA"Full Screen" IvVðgp·é�}ÆÉæèAãLÌæ¤ÈR[hÅηé�}ÆÈ³µViewð\¦³¹é�}ƪūéB
QlLF
http://stackoverflow.com/questions/12651460/uiactionsheet-height-is-4-inch-on-a-3-5-inch-device
yÔOÒz
iPhone5©çA[LeN`ÉAarmv7s ªwèÅ«éB
QlLF
http://hmdt.jp/blog/?p=594


iPhoneTÆ4sÈOÌØèÖ¦ÉÂ��Ä¿âÅ·B
»óstoryboardÅì��µ½àÌÍR[hÅ5Æ»êÈOð¯ÊµAIuWFNgÌzuð²®µÄØè֦鵩È��Ìŵ天H
istoryboard¤Å5pÆ4spÌViewðì��µÄØèÖ¦éÍoÈ��Ìŵ天Hj
�}̼ÌÅæðpÓµÄà·µÏíçÈ��ÌÅ·ªAÈÉ©ÝèªKvÈÌŵ天H
UIActionSheetÌ��䯝lÉAvOãÅAæÊ̳ð»èµÄæð\¦·éæ¤ÉR[hðÏX·éKvª éÆv��Ü·B
½¾A[[UIScreen mainScreen] applicationFrame]¾ÆA MâeUOÌÉXe[^Xo[ªg��³êÄA528ªÔ鿤ŷB
�}ÌܦeUOÉÀ@صÄCëܵ½BQlÜÅÉB
µ©µÈªçA{uOÌ`ªÉÆÓƵÄLÚµÄ��éÊèAuuOàÅLµ½R[hAàe̳m«ÍÛØ��½µÜ¹ñBLÚàeðÀµ½�}ÆÉæè��µ½sïE¹QÌÓCÍêØ��ܹñB v
{uOÍ ÜÅÂlIÈJõY^ƵÄLqµÄ��éàÌÅ·B
Âlª²¸Eص½ãÅfÚµÄ�NèÜ·ªAÔá��â{¿IÈðÆÈÁÄ��È��ªª é©àmêܹñBÔá��ÈÇÍ��ÈwEµÄ��½¾¯êÎÆ����Ü·B
ܽA{LÉ^@lJÆÒ©çe³ê½RgÍA ÜèÉàíOðíEµ½³ç©Â��CÉ¿½àeŵ½ÌÅA{Lðä̼ÌJÒÌFlÌCªðQµsõÈOðø©¹éÂ\«ª Á½½ßAñfÚÆµÄ�}Ì^@lJÆÒÉæéRgðí��½µÜµ½B