ios - Develop for iPhone 4 or 5 First -
i've searched every combination can try , find answer this, i'm sure it's been asked somewhere....so forgive me if can point me in right direction.
if you're developing new ios app, setup layout in ib iphone 5 or 4 screen size first? i've found plenty of articles on using autolayout move iphone 4 apps iphone 5, not vice versa....which makes me think desired workflow apps aren't going have separate interface 2 create interface in ib 3.5" screen size , use autolayout adapt iphone 5's 4" screen.
can clarify best practice me?
kendall geln makes points. better build smaller screen , resize - because shrinking elements provide bad , cramped experience user. on note need make sure graphics (images , videos) sized both screen sizes. when creating graphics, may best create them @ large scale first , size them down needed.
another design consideration creating different interfaces 4-inch , 3.5-inch screens. 4-inch screen taller , provides developers more space, , therefore more possibilities. same principal designing ipad , iphone interfaces.
you mention doing in interface builder. default (now in xcode 4.6+) new iphone-based projects start interface @ 4-inch / iphone 5 layout. can toggle between layouts @ time clicking screen-size toggle button (looks rectangle arrows on either end) in lower right corner of interface builder / editor screen:
if need different interfaces different screen size, load storyboards conditionally in appdelegate. here's how might go doing that:
if ([[uidevice currentdevice] userinterfaceidiom] == uiuserinterfaceidiomphone) { // check if user on newer iphone / ipod 4-inch screen if ([[uiscreen mainscreen] bounds].size.height == 568) { // user on newer device 4-inch screen - load custom iphone 5 storyboard uistoryboard *storyboard = [uistoryboard storyboardwithname:@"mainstoryboard_iphone5" bundle:nil]; uiviewcontroller *initviewcontroller = [storyboard instantiateinitialviewcontroller]; [self.window setrootviewcontroller:initviewcontroller]; } else { // user on older device 3.5-inch screen - load regular storyboard uistoryboard *storyboard = [uistoryboard storyboardwithname:@"mainstoryboard_iphone" bundle:nil]; uiviewcontroller *initviewcontroller = [storyboard instantiateinitialviewcontroller]; [self.window setrootviewcontroller:initviewcontroller]; } }
in summary, don't think there correct workflow (ex. 3.5 4, or vice versa), should keep these points in mind:
- scaling down large interfaces can make them cramped , cause bad user experience
- the same cannot said graphics... if design graphics @ low resolution or small size , scale won't (same principle applied when designing retina , non-retina devices).
- consider different screen sizes , can done on each. remember possible create separate storyboards.
edit: starting @ beginning of 2013 apple not allow apps onto appstore not support iphone 5. must support iphone 5 screen size app or updates onto store.
Comments
Post a Comment