Scrollable grid-like view - iphone

I'm writing an app with a view that has a grid of images (3x3) and it needs to have infinite scroll per row and per column with snap to position, very similar to the 'Design Museum Collection' app. How would I go about implementing this view? Is there a library that already supports this? I would like to implement this natively in IOS. Can I use UIScrollView or do I need to create this bidirectional scroll view from scratch. Here is a video of the 'Design Museum Collection' app (http://vimeo.com/39260302).
Thanks in advance!

It's been quite a while since your question but as I've been struggling with the same thing I'm gonna answer it for future reference...
Sadly I could not find a good solution anywhere so after a lot of hours of experimenting I came up with this: https://github.com/AlvinNutbeij/DWGridController
It's still a work in progress but very usable for your purpose I'd say!

See the tutorial How To Make An Interface With Horizontal Tables Like The Pulse News App. It will guide you through the basics.

you can check this out: AQGridView.

Related

How can I make a grid similar to iphone/ipads launcher screen?

I have seen a few grids made with UITableView but I don't really like how close together each cell is to the other. If there is a way of creating a grid system like the home screen on an iphone (the screen after it is unlocked) if would be great. I don't need an exact solution but a point in the right direction, maybe a set of libraries to look through would be great. I am running xcode 4.4.1
Thanks!
The key is UIScrollView has a paging mode (since could have more buttons than fit in the view). It's covered here's in Apple ocs:
http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/UIScrollView_pg/ScrollViewPagingMode/ScrollViewPagingMode.html
If you use that, each 'page' would have n buttons/views that when clicked would call a protocol/delegate call back for the consumer with the data to handle and it would evenly layout the UIView/buttons across that page view. Contact me if you want my sample.
You probably don't want to require iOS6 as a minimum requirement but if you do, you can do as H2CO3 suggested in the comment and us UICollectionview. Here's a tutorial: http://www.raywenderlich.com/22324/beginning-uicollectionview-in-ios-6-part-12
There's also some open source launchers that you can look into their code. Here's some (I'm sure there's more).
http://www.cocoacontrols.com/platforms/ios/controls/sespringboard
Code is at: https://github.com/sarperdag/SESpringBoard
Also: http://www.cocoacontrols.com/platforms/ios/controls/openspringboard
Use UICollectionView. You can create grid type views using that. It is available in iOS 6.
If you can target iOS 6+, use UICollectionView. It's one of the best new things in iOS for years and it will be as important as UITableView.
The layout you're asking for is only a few lines of code.
NSHipster has a good explanation of UICollectionViews and Ray Wenderlich has a good tutorial.
(There's lots of example code out there, but here's a very simple example project I did recently for another question involving UICollectionViews)

iPhone SDK - Expanding Buttons like in the camera app

I am curious as to whether or not there is an open source solution to replicate the flash button in the iOS camera applicaiton.
I have seem many other apps use this, but there doesn't seem to be a native way, so I assume there is a common source out there.
It is possible to get the flash button by using UIImagePickerController class, but most of the camera apps out there don't seem to be using this (or perhaps they subclass it, which is against apple's terms).
I am looking for a way to replicate the expanding behavior of the button. Any thoughts?
It doesn't sound too hard.
The way I'd do it is to separate the right curve of the button (as images), and make a UIView that has the left part of the button and the right curve as subviews.
When it's tapped, slide the right curve and animate the extra buttons in.
You could use a stretchable UIImage (see UIImage documentation) and then just animate the frame changing.
In the Apple 2010 WWDC Sample code (downloadable via iTunes, otherwise I'd post it here), there are several sample applications which use this control. They call the class ExpandyButton. I realize I'm answering my question, but hopefully someone out there can find this useful.
While looking for a similar solution to this problem I came across this code which was extremely helpful. Similar to ExpandyButton it fit my needs better.
https://github.com/ddebin/DDExpandableButton

Creating a tableview in the form of a 'film strip'

I am developing an RSS-reader-type application. I am toying with the possibility of using a normal TableView application but showing the articles as a film-strip. I am mainly thinking for an iPad application (but possible it works on the smaller iPhone as well).
The idea is to have the cells passing/scrolling across the screen using swipe touches (but horizontal, and not vertical as with the normal TableView). They will be some-kind of miniatures of the full article, and when tapped (or with multi-touch zoom to have better control) can be enlarged to read. Then can then just be be moved on as soon as the user has seen enough of it.
Does anybody know if there is an easy way of accomplishing something like that?
The most obvious solution that springs to mind would be to use a UIScrollView, as this will provide the inertial effects, etc. for free - all you'd have to do it populate it with the relevant sub-views. (UITableView's actually use a UIScrollView.)
For more information and sample code, see Apple's UIScrollView docs.
If you want horizontal scrolling, take a look at Jeremy Tregunna’s JScrollingRow. It’s open source under a public domain licence.

iphone, tableView and appStore application

I want to create an application excacly like appStore.
A nice table (I have the source code from apple using custom table cell)
But my main problem is that I cannot find a nice tutorial or a guide on how to make the product detail page.
I want to have a label at the top then a text and after that I want to have the images.
I notice that in appStore when you reach the images it locks there for a while!
How can I do that???
I tried using a UIScrollView but I believe this is not the case.
I am thinking using tableView again with custom cells but again I am not sure.
Any ideas? or any good working example? or tutorial?
thanks for your time :)
start from here:
http://blog.webscale.co.in/?p=284
Which will teach you basic table design skills and how to create custom cells with images on the left.
Then if you would like to learn how to create a tab bar application an be able to have a navigation controller at the top then you can follow this descriptive tutorial step by step to achieve this.
http://www.devx.com/wireless/Article/44897
What do you get after following these two tutorials?
the appStore application, well not exactly but you will get your own version.
EDIT: Added Details page how to achieve appStore like UIScrollView effect.
follow this brilliant video tutorial.
http://blog.sallarp.com/iphone-ipad-appstore-like-uiscrollview-with-paging-and-preview/
Have fun
PK
Then

Creating fancy uiTableViews

I am looking to implement a "world High Scores" for a game I wrote. I have several games already installed on my phone and was wondering how developers are creating those fancy looking "High Score" table views?
I have seen some very cool ones...some showing the scores within a view that pops up from the bottom, showing half way and then having buttons across the top of the view to show Local, and Global scores. Orba is the game I am speaking about.
I guess what I am asking is: Are these just regular uiTableViews with different background images and if so, does this all have to be done via code and not via builder?
Any example links would be greatly appreciated. Thanks
Geo...
George,
I would suggest this excellent article by Matt Gallagher: Easy custom UITableView drawing. He goes through great pains to show and explain many ways to customize UITableViews.
Without seeing a specific example, I hope this helps.