Walkthrough / tooltip / demo for iPhone app - iphone

I've got an app that appeals to an older demographic. The interface is simple but with some custom controls where a simple graphic is not completely self explanatory (save to playlist, sort by genre for example).
I've seen plenty of apps with great first run walkthroughs (examples here) but don't know if there are some existing libraries out there.
Your suggestions are welcome.

I found CMPopTipView that, while it doesn't fit my needs completely may be of use to those that are looking to pop a tool tip every now and then.

Most of these overlays/walkthroughs can be accomplished by adding a subview to the main window of your app. There are some edge cases to take into account, but for the most part, you need to simply grab a reference to the key window with
UIWindow* keyWindow;
keyWindow = [UIApplication sharedApplication].keyWindow;
You then would add your overlay view as a subview with:
[keyWindow addSubview:anOverlayView];
Handling taps to dismiss the overlay can be done with a tap gesture recognizer.

If you are looking to create a click-through demo which runs in the browser and on mobile devices, AppDemoStore is the right tool for you. You just have to upload some relevant app screenshots, add hotspots for the navigation between the screens and callouts for explanations. It takes only a couple of minutes and it's free.
Regards,
Daniel

Related

slide show with UIGestureRecognizer and with tap action

i am noob and new in development iphone application so i want to create a slide show(ios 5 with storyboard) ( banner with 5 or 6 image and every image the user can clicked on him and go to link in itunes for the app it's like a banner but no only one it's multiple )
i want the user can swipe between images and can click in every one and go to specific link so if on people have a tutorial or documentation or sample code for how to do this it's will be very helpful thanks
you can understand UIGestureRecognizers by some examples like these:
http://www.icodeblog.com/2010/10/14/working-with-uigesturerecognizers/
How to detect Swipe Gesture in iPhone SDK?
http://iosdevelopertips.com/event-handling/gestures-recognizers-tap-pinchzoom-rotate-swipe-pan-long-press.html
Best way is to use UIScrollView with paging, so you'll have to deal with only one UITapGestureRecognizer.
Take a look at the Facebook app's Three 20-framework for inspiration:
http://joehewitt.com/2009/03/23/the-three20-project
There is a fully functional slideshow-framework in there that you can look at and get some idea as to how you can make it on your own.
The TTPhotoViewController is the class you are looking for:
https://github.com/facebook/three20/blob/master/src/Three20UI/Headers/TTPhotoViewController.h

IOS new Facebook iPhone App UISplitViewController Layout [duplicate]

This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
SplitView like Facebook app on iPhone
another break away .net developer here now trying to get used to the world of IOS.
I like the layout of the new Facebook iPhone app (October 2011), and want to implement something similar in an app I am doing. I know that the UISplitterControl is not available on iPhone but Facebook seem to have pulled a little magic to make it appear so on their new app.
In Facebook's implementation it looks to me that they have used a UINavigationController which slides to the right by x when the NavigationBar icon is tapped thus exposing a view underneath with the menu items.
Would appreciate if someone could help me work this out as the solution would also be a great learning curve.
I've tried setting a UINavigationController as the AppDelegate window root view controller, then using initwithframe to load a custom view which includes the menu items as a subview hidden behind the UINavigationcontroller root view. Then when the UINavgationController menu item button is clicked slide the NavigationController to the right thus exposing the view underneath with menu items.This presents two problems, first that the subview positioning doesn't work and also how can I slide the actual UINavigationController to the right to expose the menu view underneath.
Please help!
Might also want to check out my implementation on Github. It's specifically designed to resemble Facebook's implementation as much as possible (from a technical point of view). Also it leverages iOS 5's new UIViewController-Containment features, which most others don't. Thus it works flawlessly in both landscape and portrait modes. It's universal of course and highly flexible. One class only. The way you use it is similar to any other Apple made controller.
there is a similar post here: SplitView like Facebook app on iPhone.
you can also checkout the code directly at: https://github.com/mystcolor/JTRevealSidebarDemo
I'm having exactly the same question, my guess is that the "SplitView" is actually more likely a modal view that takes up only part of the screen. I haven't had the time to try it just yet but the following post might give some hint on how this can be done:
http://ramin.firoozye.com/2009/09/29/semi-modal-transparent-dialogs-on-the-iphone/
You might want to check out this project
https://github.com/aaronbrethorst/StackScrollView
Here some howto
http://cocoacontrols.com/posts/how-to-build-the-twitter-ipad-user-experience
Similar to the one "MyPad" is using.
Note: This is only for iPad but you might find some usefull stuff in it
I created a component that mimics the behavior of the Facebook slide out menu. It is available on github.
Here is link from stack overflow where people have discussed on same topic.
Also there are several links that can be helpful:
SplitView like Facebook app on iPhone

Create an updating animation similar to the facebook iphone app

I have a scrollview with all my data to be showed and I want the user to trigger it being updated. The user should pull the scrollview downwards, then a small view will be shown that was previously hidden and that says: "updating" or "release to update".
Look at the iPhone facebook app and you will see what I am talking about.
They did it pretty awesome, they have a small animation that and an arrow that makes it easy and intuitive.
However when trying to replicate this behaviour I have found that the UI is blocked until the scrollview delegate function was run. This is impractical because I want to update the UI from that scrollview delegate function.
So when the user holds the scrollview in a dragging motion, there should be a small animation or so that tells him to release it or hold it longer.
- (void) scrollViewDidScroll:(UIScrollView *)scrollView
{
CGPoint topOffset = CGPointMake(0, 20);
if (self.contentOffset.y < 0 )
{
labelUpdate.text = #"Release to update.";
//do something here to update the UI
}
}
Search google for pull down to refresh
I would recommend you look into the Three20 library. Chances are that functionality has been incorporated into that library so you don't have to make it from scratch. (I haven't looked into the Three20 library for awhile so I can't confirm or deny this for sure, sorry.)
You might want to use an existing framework. A couple of them are mentioned here.
Three20's TTTableViewController
The first time I saw this functionality was in the Tweetie(now Twitter) app and now the Facebook app. The first developer of the Facebook app created an open Framework called Three20 and coincidentally Three20's framework has a demo twitter app on github. To use the 'pull to refresh' functionality though you might have to use Three20's TTTableViewController which uses url paths to keep track of navigation so you might have to adapt your app to use that but there are plenty of tutorials for Three20 like this one.
Thanks for all the answers,
ultimately I have chosen this solution:
https://github.com/leah/PullToRefresh
because it simple and it works. Additionally I have refactored the ViewController shown there into a simple UIView type that you can comfortably use with any UIScrollView derived class.
A link with code will follow shortly.

iPhone/ iPad app development TV Out

HI,
I have just submitted my first application to iTunes for approval, however, there is one thing I really want to add to it ASAP.
I would like to code into an app that it can use the TV Out functions of both the iPhone and iPad? Ideally it would work in a similar way to how keynote works i.e. you see a bit more on the iPad itself than is projected on the TV, but even just mirroring the screen would be a step in the right direction.
I have searched all over for this and all I keep getting is about downloading jailbreaks for you iPhone to mirror the screen, which doesn't really help.
Thanks in advance,
If you just want to mirror, use my TVOutManager singleton. I've put up code to do this on github: https://github.com/robterrell/TVOutManager (Hmmm... I just noticed I haven't pushed the most recent code. I'll review and push new code asap.) I wrote up some detailed info about it at http://www.touchcentric.com/blog/archives/123 if you want to know the how's and why's.
Basically, just add the files to your project, and call:
[[TVOutManager sharedInstance] startTVOut];
If you want to do more than mirroring, read the docs on UIScreen. It's fairly trivial to create a UIWindow on the external screen (steal the bits from TVOutManager if you need to) and add subviews to it. This way you could have a Keynote-like controller on the device screen, while the main display is on the external display.
http://mattgemmell.com/2010/06/01/ipad-vga-output should get you started ...
Mirroring is not possible.
But to draw on an external display, just get the UIScreen object for the external display, then set the screen property of a UIWindow to it, (making sure to set the frame correctly etc) everything in that window should be drawn on the respective display.
Relative links:
developer.apple.com/library/ios/#documentation/uikit/reference/UIWindow_Class/UIWindowClassReference/UIWindowClassReference.html (look at screen property)
developer.apple.com/library/ios/#documentation/uikit/reference/UIScreen_Class/Reference/UIScreen.html (look at +screens)
(I don't have any reputation => can't post clickable links)
I think, you can't do this. You can only stream videos from iPod app.
But, if you have jailbreak on your device, try this (link) or take a look at this great YouTube video (link) showing exactly what you need.

iPhone, how can I provide a simple tutorial for my app where screens are pushed etc?

I'm looking for a simple way to provide a tutorial for my app.
I want the tutorial to show something on screen and be moved to the next screen as they move through the tutorial.
Any ideas?
Use an NSTimer in your AppDelegate to automatically present views over a period of time, in sync with a voiceover