Difference between tabbar based application and tab bar view controller in iphone? - iphone

I am new to iphone development.what is the difference between tabbar based application and creating a tab bar using tabbar controller in a view based application.Which has the major advantages?Thanks.

The only difference is what code is auto-generated for you. You could recreate either project from a "Window-based application" project by adding the appropriate components.
If you're new to iPhone development, you can bootstrap your learning process by having Xcode generate the most detailed project that applies, so you don't have to do so much bookkeeping to start.

Related

What type of iOS project template should I start with?

I'm building a project similar in design/scope to Invoice2Go and was wondering what the appropriate iOS project type would be to start with in XCode.
It doesn't really matter, from the most basic template (Window-based Application) you can setup any app. It seems Invoice2Go makes use of a tab bar, so the Tab Bar application seems most convenient, though you can add a tab bar to the Window-based Application as well.
Personally I like to start with a Window-based Application most of the time, this gives me the most flexible starting-point.
I think the app looks like Tab Bar based application. You can try using that template. Of course you can start with simple Window based app, but you need to wire it all up yourself.

iPhone/iPad: Universal App and InAppSettingsKit

I have a application which is a universal application. On iPhone, it's a Tab Bar application and on iPad its a Split View app. For settings, I really wanted to include the three most important settings in my application, and then launch the Settings Application on demand for minor settings (but Apple screwed us there). So I'm trying to integrate InAppSettingsKit.
Because the application is a universal binary, InAppSettingsKit must be installed in Shared/. Otherwise I will get problems with duplicate symbols (or I have to duplicate and rename everything with *_iPhone and *_iPad).
I'm trying to cut-in InAppSettingsKit on the iPhone. Because its a tab view, there is no NavigationController as IASK expects (so a tap does nothing except highlight the row cell). So the library will need some modifications. In addition, when I tested a purely iPad cut-in, IASK would SIGABRT because it expected a tool bar (IIRC).
The README only has a link to http://www.inappsettingskit.com, which looks like a lot of programmer related marketing. There are no Universal App samples, and the two samples provided are very basic (not reflecting the needs of a Tab Bar/Split View app). In addition, I have not found a place to ask questions (github does not appear to have a bulletin board system [1]) and there does not appear to be contact information.
Has anyone successfully used InAppSettingsKit in a Universal App? If so, was sharing the best method, or was duplicating files and renaming the best method. Was it worth the effort to debug and modify someone else's work in a vacuum? If someone have a better recommendation, I would love to hear it.
[1] https://github.com/futuretap/InAppSettingsKit
First of all, there's an "Issues" area on the GitHub page where you can ask question, too. We don't give individual advice because we wanna avoid duplicate work for a voluntary project.
I don't see why you should need to modify InAppSettingsKit at all depending on whether it's used in a tab bar or split view controller.
Take a look at the sample project where we integrate IASK into a tab bar, a navigation controller and a modal view controller.
Other than that, I'm afraid, I don't have specific advice how to integrate it into a Universal binary.

Xcode iPhone: New Project Template, Combine?

This question is simple... you have a choice of which Template you'd like to use when creating a new iPhone application in Xcode.
What if I choose a View-Based, but I need a Navigation-Based application too? Can you combine the various templates within a project? I mean, is it just a matter of creating a new .xib file and dragging on the various UI components?
The navigation based template is also view based. Look at the code, the navigation based template contains a rootViewController which loads its view from a xib file.
You cannot combine templates automatically you'll have to do it yourself.
You can always create custom templates as you want. You just need to pick a template from Xcode then you can modify it as you want and just place it on a proper location.
Read my this blog post for a better understanding - http://www.makebetterthings.com/blogs/iphone/how-to-create-xcode-project-templates/

iPhone Beginner Question - Hooking Up Actions

I'm just starting out with iPhone development, and in my hello world application I'm having a hard time hooking up a view to a controller with actions. I followed the instructions in the book I'm reading (I believe), but depending on where I run the application the app behaves differently.
-When i command-r from the code, I see only the single button I have on the view taking up the whole window. When I click the button the action is triggered.
-when I command-r from the interface designer I see the button, label, and textbox lined up correctly. When I click the button nothing happens.
Anyone know why this is happening/how to fix it? Thanks.
Launching simulator from interface builder only simulates selected .xib file. You should only do that to test your view design.
If you want to learn the basics about iPhone development I recommend:
NewBoston: http://www.thenewboston.com/?cat=34&pOpen=tutorial
Stanford: http://itunes.stanford.edu/
both are free video tutorials on how to make iPhone apps.
Good luck!
you accidentally the whole view.
Seriously. You made one wrong connection. You connected the view outlet of the viewController (aka File's Owner) with the UIButton.
just delete this connection and connect the view outlet of the File Owner with the "Root"View.
And you should probably remove almost all connections that trigger btnClicked: too. TouchUpInside from the button is enough.
And you should follow the objective-c coding style (Part II) and start all Class names with a capital letter. chapter_2ViewController should be something like Chapter2ViewController.
To my knowledge you cannot run an app from interface builder, I may be mistaken.
You should make sure your interface builder file is saved and run the app from within xcode
just a guess, but is the window size in the simulator different than that in IB? You might check the control resizing masks and on the sizing tab in IB.

iOS project not showing Interface elements built from Interface Builder in my view

I am working on a project which includes many UI components on one view(being built in Interface Builder). I have found that after saving and moving my project directory, the interface which should include all of these elements, is empty(there are no visible UI components in the view).
There are actually 2 projects. 1 is a framework project, the other is the iphone project which i build & run on the device - everything is contained within a folder which i may move frequently as other members in my team work on it.
the view which is not properly showing elements, is an XIB file which can be modified through either the iphone project or framework project.
Why is this happening and how can i troubleshoot this problem further? I am not sure how to fix it.
Many components will not show if they're not been connected to a property, and some will not show if their datasource or delegate is not connected.
Have you wired everything up, making all of your connections?
Could you check the view hierarchy in the -(void)viewDidLoad ? As Matthew said, if those components are not connected to properties, they won't be shown. And, if they are not add onto proper view, then they won't be shown too.
You can check the view hierarchy of viewController by browsing the property subViews of self.view.