A general question regarding images to be used in iPhone - iphone

This is my first iPhone application. So I have this long list of doubts :-)
My application has a UItableView on the first tab and a Contact us page on the third tab. In both these tabs I display images.
For the UITableView i get images from the server and for the contact us page I have a set of static images of my client.
My question is, is there any specifications on the quality of these images that I should follow to get my App approved in Appstore?? These images are readable, but not of high resolution.
I know there are guidelines on the Tabbar icon images, the splash screen images. But what about the static images and the images i receive from the server?
Guidance or help would be appreciated :)

There are specifications based on display. However it is not mandatory to support both the displays (normal and retina).
You may want to dig more into the HIG. If you don't have images of double resolution then on the retina display the appearance of the app may be bad.
However you can use any image(barring other violation like DRM, copyrights etc) in your app.
Approval is also based on a large number of parameters. The images may not be a part of it.However they will specify it explicitly if rejected.
Have fun.

If you feel the image is good then use it.. Apple wont gonna reject your app due to images.
But just keep in mind that there are few icons defined by apple for specific purpose like action icon for opening actionsheet, camera icon for opening camera console or wallpaper.
Just keep in mind that you are not changing the behaviour of the predefined icons....
Rest all is fine..
Happy iCoding...

Related

Non-4-inch apps top-aligned when new splash included

Apple is now requiring a retina and 4-inch display Splash page (i.e. the "Default-568h#2x.png") for all apps to be submitted, which is fine. However, when I include that and then do another build, once I get into the app, instead of it being centered with dark on the top and bottom (as it was before), is now top-aligned on the screen with 2x the blank space on the bottom.. which looks really unprofessional.
Is there any way via our configuration to tell the OS to go back to centering the app, despite that it has the now-required 4" Splash page included? Ideally I'd like to be able to do this without updating every single IB view in the app to center it manually, as I feel the OS should still be able to do this somehow via configuration.
FYI, answers that say "update your entire app for 4"!" are unacceptable. There are clients who don't yet have a creative budget for this but still want to keep their existing app looking decent in the store. If it's not possible, then it's not possible, but that is why I'm asking the question.
Thanks in advance for any assistance on this, and my apologies if this has already been asked.
As of May 1 if your submitting this app to the app store you will be required to support both retina display's, and the new 4" screen size.
https://developer.apple.com/news/index.php?id=3212013b
You misunderstand. As of now, you must fully support the full 4" screen of the iPhone 5 and 5th gen iPod touch, in addition to retina and non-retina devices.
By adding the "Default-568h#2x.png" launch image (it is not a splash screen) you are telling the OS that your app supports the 4" screen.
You must update your app to fill the screen. There are countless existing posts about how to do that. There is no way around this. It is 100% required - no exception from Apple.
BTW - Apple announced this requirement on March 21st. Every registered iOS developer was notified of the requirement.
It isn't possible to do what you're asking with a single setting. Your best options are a bit of code that runs when you load a view to change the origin.y position, or, go through the XIB files and update the autoresizing rules so that the views expand to fill the space. You might not have budget to update the graphics resources in the app but you should be able to spend the small amount of time required on autoresizing.
The caveat to 'small amount of time' may apply to you - if you explicitly set the size of all of your views in code you've made life painful for yourself.

Which Launch Image Should I Use?

I'm building a game for the iphone, and the main window displays an image in the background describing the game, and I have few other layers of images which are the buttons such as Start New Game, Options and Help.
Should the launch image be only the background image describing the game without the extra image layers or should it be image including the other layers which are Start New Game, Option and Help?
Thanks.
The bit covering launch images can be found here. Below is an example launch image (left) provided by Apple.
Their docs specifically site concerns about localization, so it's probably best to do without the text and provide an image that just has your background chrome for the view.
The launch image should give the illusion of a really fast launching of your app. So the better image in your case is an hybrid of your proposal.
You should have the background image describing the game with the extra image layers without the text inside your buttons (Start new game, etc.) If you include the text, the user could think that your app is loaded and would tap on it.
Hope this helps
All the Apple guidelines on launch images are available here (scroll down to "Launch Images" section). It seems like the convention is to show buttons but not table view data, based on the examples show and from observing other Apple apps.
It's probably up to you to determine which looks better. I have seen many apps on the app store that totally ignore all of these things you aren't supposed to do:
An “application entry experience,” such as a splash screen
An About window
Branding elements, unless they are a static part of your application’s first screen
So I don't think it's that important for App Store acceptance, but it is very important for user experience.

iPhone App Tutorial/Help Screen UI

What is the best way to create tutorial or help screens that can be viewed in an iPhone App on launch?
I'm debating between using two paradigms:
Edit a screenshot of the app with an image editing program to add static help text. Interaction is tapping or scrolling through the tips. This involves creating a custom UIViewController to advance to the next help screen.
Create a custom iPhone UIControl on top of the App user interface that can be tapped to advance to the next tutorial tip. The application will transition between the modes and will be active, rather than static. It involves adding hooks into the App's custom ViewController's to handle "TutorialUIControl" objects.
Here's some screenshots of the application that I need to make help screen UI for, it's an application that creates artwork. More App Information
Screenshot 1: View mode that allows viewers to scroll through an image list, like the UIImagePicker, but for custom image collections.
Screenshot 2: Action mode - allows viewers to select images to save to the "My Saved" album from the active art generation album "My Evolution" or evolve images using sexual/asexual image reproduction.
The "right" answer really depends on the application you are designing. I would highly suggest getting as many apps as you can and looking at how they do help. See what works and what doesn't and think about how that is related to your own design.
In my app (a game) I chose to build a set of static images that could be scrolled through to provide detailed help (based on Apple's sample code). But, I also built an interactive tutorial that plays the first time you run the game. I also pop up a welcome overlay the first time the app is run and suggest what button to press to start a game.
It also helps if you test your tutorial with a lot of different people. After several designs with things too complex, I boiled down my instructions to something extremely simple: "Press the green buttons", and then built up from there.
You can easily store a preference to say whether the app has been launched before, and if that entry is blank you run the tutorial again.
You can create an HTML tutorial that you view through a UIWebView. In on of my iPad apps, I just made a large image that I presented modally with images and text explaining how to use the app.
For iPhone, the best way to include a "How-To" tutorial for your app would have to be a web document, seeing as how you can add images and formatted text.
Alternatively, You can add more views to your controllers with transparent backgrounds and animated buttons and text, for a more interactive feel.
To answer my own questions many months later.
I revamped and used WEPopover to show my help popups, as seen in the iPhone/iPad App, Wallpaper Evolution Lite. The help disappears only if tapped or the button it was attached to was pressed. Using this flow I could highlight a series of buttons to the user.
I added help images within the application to highlight interaction behaviors with the content. The tap, zoom, and drag images are fully interactive.
As #WrightsCS mentioned HTML is another avenue. I use the UIWebView to provide a more in depth help/tips screen with contact information.
In my upcoming app, I'm making use of a paging UIScrollView with help content highlighting app features. The help screen is loaded on the first start of the app, and is accessible through a help menu option.
Here's my fork of the WEPopover github project: https://github.com/PaulSolt/WEPopover

How will I have to update how I program for iPhones now with iOS4?

For example, preparing a launch screen of 320 x 480 would have to be changed....
How is that going to work for us? Are programmers always going to have to be submitting a high-res that will be scaled down for old devices such as the iphone 3g?
The size of the screen is basically 4 times on a pixel by pixel basis. So each pixel of your image for example gets boosted to 4.
What this means for you? You don't have to change your App, your app will scale to the hi res screen for you, same with your UI and images within your UI. Of course if you want to take advantage of the better screen quality you will have to submit hi res images.
I haven't looked at going the other way but I believe it would be a similar case.
One exception to this is text. It automatically scales to the higher res for you for free. So text will look super sharp. One problem with this is if your loading image has text based on the original load screen that wouldn't look the same as when the high res text loads.
Strictly speaking, anyone who's seen the documentation on how they're handling this is still under non-disclosure until Monday, when the new iOS ships.
Suffice to say, it's clever. You'll be able to put both high and low-rez versions of ALL your images into your app, and then load them into your app in a way that's totally transparent from the code side. The device will make its own call about which version of the image is appropriate for the kind of screen it's got.
Now that the WWDC 2010 videos are available for free to any registered iPhone developer (or ADC member), I recommend watching Session 134: Optimize your iPhone App for the Retina Display for a full description of what you need to do to support the iPhone 4's new display.

Grid View as demoed in iPad

I'm trying to develop a grid-like application for the iPad. Has anyone seen a control that displays info in a grid? In the demos they use a grid-like layout in both the iBooks store and the pictures application.
Specifically in pictures, they are displaying a dynamic list of data in a grid.
I can work around it, of course, but I'd rather use a control if one exists. Thanks!
DTGridView:
http://www.danieltull.co.uk/blog/2009/10/28/dtgridview/
You should try AQGridView it does what you need.
Here are few screens of apps that use this library:
The people who know what controls are or or not in the 3.2 iPhone dev tools have all committed to Apple NDA so we can't tell you.
Steve is always watching.
If you have signed the NDA you should go to the Apple boards and ask.
You can however, make a gird like display very simply with the standard UITableview. Just have a tableviewcell subclass that displays columns. It took me about an hour to reproduce the photo picker display using that method.
Nope, you will have to create your own. People have been writing Home Screen compatible views though, so you might want to search for open source projects with that functionality.