Is it the same write the iPhone and iPad app? - iphone

I have a question about the objective C. I am writing the iPhone application and I want to app which can also run on iPad. Is there are some change do I need to do? As I set the element in code rather than using the Interface builder. Do I need to reset the x,y,width and height for the application? Thank you very much.

You can run exactly the same app developed for iPhone on the iPad. However, it will not use the full screen of the iPad. Look at the Facebook app for instance, you can zoom it but it doesn't look very nice. If your goal is to run an iPhone app on the iPad, you don't have to bother much. If you want to really support iPad in your application you should implement a separate UI for iPad and this is supported in XCode. The iPad has of course a larger screen but also some additional layouts and controls that make apps look great on the iPad.
Have a look at http://developer.apple.com they have more information about this.

Related

going from Iphone to ipad

I've created full app for iPhone, but I need to make iPad version. mostly the app is lists, but login screen, logo and cells are too small (just to repeat - it was created for iPhone). Is there any way to create iPad user interface or stretch phone views?
Thatnks for your help. Btw sorry if it's duplicate of some similar question. Just couldn't find it (maybe bad keywords).
You absolutely should have separate XIBs for iPad & iPhone. Now, if you want to try and save some work and start from the iPhone XIBs as your base point, you should take a look at the top two answers from this question:
Xcode 4 .xib Create iPad Version

convert an ipad app to iphone app with custom views

This might be a repeat question.But i have a problem. I have an iPad app functional. The app is built in iOS 6. When i started building it i chose iPad as targeted device NOT universal. Now my client has asked for an iPhone version of it.In my iPad app i keep adding custom views as the client clicks "Add More".I add a custom view which is bunch of textfields, buttons etc.So i copied my iPad app and changed the Targeted device family to iPhone once and also Universal next time and tested it. So when i launch the app in iPhone configuration (keeping the targeted device family as Universal) my view controller stays like that on iPad. I cannot scroll the app also(not up/down..nor sideways). Is this the correct way to convert iPad app to iPhone app . Also everything is still with scale to iPad. Should i start a new project and start everything from scratch.Set the storyboard to fit according to iPhone configuration? In my research people said just change the targeted device family to Universal. But it doesn't work. Please let me know if you need more information. Thanks.
It is possible to convert the current project you have to an app that can be used universally, but it would take more time than simply just creating a new project that allows universal usage, and adding in the files of which you used for your iPad project.
Hint: You can use more than one storyboard when the project was created universally. It will automatically set this up for you.
I would also advise that you separate your files into what works universally, and what is specific for the iPhone or the iPad.
Happy Coding!
After many search i found that it possible to have an application for both Iphone and ipad devices.but in your code you should define unique ui for each device(two xib file).

why does an iOS universal app need to have two different xib files?

I'm a newbie of iOS development and I'm confused regarding universal app.
We can use the same code, same xib file for iPhone 4(retina) and previous iPhones, but why we should write two different xibs for iPhone and iPad? What's the difference?
For iPhone and retina iPhone, we use "point" instead of pixel for the coordinate. Why we can't use the similar method for iPhone and iPad?
For some simple apps, it is possible to design your iPhone UI and reuse the same xib file for the iPad. Just select your Target in XCode and copy the Main Interface text from iPhone / iPod Deployment Info to iPad Deployment Info. If you're using a Main Storyboard, copy that too. However, the iPad does not simply scale everything up from the 320*480 / 640*960 iPhone screen to the 768*1024 / 1536*2048 iPad screen. #elgarva correctly says that this would look terrible. Instead, the iPad version makes use of your autosizing masks to resize or reposition each view.
If all of your views can be considered to be left-middle-right or top-middle-bottom, this may work. If you have anything more complicated, you'll need to design a separate iPad interface.
Duplicating your iPhone UI is not just discouraged for aesthetic reasons - iPhones often end up containing a deep and confusing navigation tree for tasks that the iPad can fit on a single screen.
The main reason, is that if you just scale the elements on the UI to fit the larger screen, it wouldn't look nice... and you don't need to do anything for it to work, it automatically does it for you if your app is iPhone only and installed on an iPad (if the user chooses to).
Having a different XIB lets you rearrange your app, and think it so that you can take advantage of the larger screen. You can probably show more information on one iPad view than on 3 different screens on the iPhone... so, your iPhone app could show basic info and expand it when the user taps on it, while your iPad version could show all the information on load, plus extra graphics that look nice but aren't needed, and wouldn't make sense on the iPhone screen.
PS: If you're starting a new app, I strongly suggest you using the storyboard if your app won't have a lot of views... it's really easy to get started and it lets you see your app flow at a glance.
The ratina display just doubles the resolution of original iPhone. If you don't provide separate graphics for retina display, then system just doubles the resolution of resources.
The points are related to physical size of screen, which is similar in old and new iPhones.
For iPads, the screen size changes. This means that its dimension in points will be different from that of iPhone.
duplicating the xib file and renaming that as filename~ipad.xib is working great for me in ios6.1

Making Iphone App Working on iPad

I have created an iPhone Application, which works only on iPhone.
Now, I want that App on iPad, too.
Is there any way that I can reuse my existing iPhone XIBs to support that App on iPad. (I don't want to recreate all the XIBs for iPad separately.)
Any guidance for that?
Also, What other points I need to take care of?
Your iPhone app will work in iPad if you choose 2x zoom view. But the display will not be of the highest quality. Now rumors are there that next iPad will have retina display. So, one suggestion I can give is, when you create a new project, Choose "Universal" as the option for device family.
Depending on your app, Feature detection might be one thing you have to look out for when you try to run an app on iPad. For example, Siri is available for iPhone 4s, but not iPad 2. (Although the API for Siri isn't out yet, I'm just putting it there). Also, iPhone 4 has camera, while iPad 1 doesn't have.
Click on your target, and under "Devices" change to Universal. Now your project should run on either device.

How to get a cocos2d app to use iPad?

I have an iPhone app I developed using cocos2d. I have the correct version which supports iPad. Now, how do I get it to change the screen resolution or to recognize that it is an iPad app and not an iPhone app?
You can use the UI_USER_INTERFACE_IDIOM() to figure out in what kind of device your app is running. Anyway, you should always try to layout your stuff relative to the screen size (or the root view controller's view size) so that it will adapt itself to any resolution.
You can make your app use the entire iPad screen and not run in the simulator simply by changing the target device from iPhone to iPhone/iPad in Xcode. If you want your app to show different UI and run different code on the iPad, you can check for the device by using one of several ways to detect an iPad in Objective-C.