Introduction
In this article I will create a Single view application. Here I use a Setting Button in the first view; when we click on the setting button it goes to the second view. In the second view I use a table view controller and on the table view cell I use an Image view, label, UITableViewCellAccessoryDisclosureIndicator and UITableViewCellAccessoryCheckmark. It is a best example of UIView in the iPhone.
To understand it we use the following.
Step 1
Open XCode by double-clicking on it. 
Step 2
Create a New XCode Project by clicking on it.
Step 3
Now Select Single View Application and click on Next. 
Step 4
Now provide your Product Name.
Step 5
Select the location where you want to save your project and click on Create. 
Step 6
Now we write code:
MCNViewController.h
//
// MCNViewController.h
// Setting app in iphone
//
// Created by Sachin Bhardwaj on 01/12/12.
// Copyright (c) 2012 Sachin Bhardwaj. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface MCNViewController : UIViewController
{
IBOutlet UIButton *settingbtn;
}
@property IBOutlet UIButton *settingbtn;
-(IBAction)click;
@end
MCNViewController.m
//
//  MCNViewController.m
//  Setting app in iphone
//
//  Created by Sachin Bhardwaj on 01/12/12.
//  Copyright (c) 2012 Sachin Bhardwaj. All rights reserved.
//
#import "MCNViewController.h"
#import "SettingViewController.h"
@interface MCNViewController ()
@end
@implementation MCNViewController
@synthesize settingbtn;
-(IBAction)click
{
    
    
    SettingViewController *setting = [[SettingViewController alloc ]init];
    [self.navigationController pushViewController:setting animated:YES];
    
}
- (void)viewDidLoad
{
    [super viewDidLoad];
      self.title = @"Setting";
    self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
@end
 
SettingViewController.h
//
// SettingViewController.h
// Setting app in iphone
//
// Created by Sachin Bhardwaj on 03/12/12.
// Copyright (c) 2012 Sachin Bhardwaj. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface SettingViewController : UITableViewController
{
IBOutlet UILabel *lbl1,*lbl2;
IBOutlet UIImageView *img1;
}
@property(nonatomic,strong)IBOutlet UILabel *lbl1;
@property(nonatomic,strong)IBOutlet UIImageView *img1;
@property (nonatomic, retain) NSMutableArray *arrCategories;
@property (nonatomic, retain) NSMutableArray *arrimages;
@end
SettingViewController.m
//
//  SettingViewController.m
//  Setting app in iphone
//
//  Created by Sachin Bhardwaj on 03/12/12.
//  Copyright (c) 2012 Sachin Bhardwaj. All rights reserved.
//
#import "SettingViewController.h"
#import "MobileCoreServices/MobileCoreServices.h"
@interface SettingViewController ()
@end
@implementation SettingViewController
@synthesize lbl1;
@synthesize img1;
@synthesize arrCategories,arrimages;
- (id)initWithStyle:(UITableViewStyle)style
{
    self = [super initWithStyle:style];
    if (self) {
        // Custom initialization
    }
    return self;
}
- (void)viewDidLoad
{
    [super viewDidLoad];
    
    self.arrCategories = [[NSMutableArray alloc]
                          initWithObjects:@"General", @"You Tube",
                          @"Safari", @"Photos", nil];
    self.arrimages = [[NSMutableArray alloc]
                      initWithObjects:@"images.jpeg", @"image123.png",
                      @"images (2).jpeg", @"images (3).jpeg", nil];
    
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    
    return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    if (section ==0) {
        return 1;
    }
    else{
        return 4;
    }
    return YES;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    if (indexPath.section == 0) {
        
        cell.textLabel.text = @"Location Services";
        cell.imageView.image = [UIImage imageNamed:@"images (4).jpeg"];
        cell.accessoryType = UITableViewCellAccessoryCheckmark;
        
        
    }
    
    if (indexPath.section == 1)  {
  
        
        cell.imageView.image = [UIImage imageNamed:[arrimages objectAtIndex: indexPath.row]];
        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
        
        NSString *Categories = [self.arrCategories
                                objectAtIndex: [indexPath row]];
        cell.textLabel.text = Categories;
        // Configure the cell...
    }
    
    return cell;
}
/*
 // Override to support conditional editing of the table view.
 - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
 {
 // Return NO if you do not want the specified item to be editable.
 return YES;
 }
 */
/*
 // Override to support editing the table view.
 - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
 {
 if (editingStyle == UITableViewCellEditingStyleDelete) {
 // Delete the row from the data source
 [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
 }
 else if (editingStyle == UITableViewCellEditingStyleInsert) {
 // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
 }
 }
 */
/*
 // Override to support rearranging the table view.
 - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
 {
 }
 */
/*
 // Override to support conditional rearranging of the table view.
 - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
 {
 // Return NO if you do not want the item to be re-orderable.
 return YES;
 }
 */
#pragma mark - Table view delegate
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.section == 0) {
        
        UIApplication *ourApplication = [UIApplication sharedApplication];
        NSString *ourPath = @"http://maps.google.com/maps?ll=-37.812022,144.969277";
        NSURL *ourURL = [NSURL URLWithString:ourPath];
        [ourApplication openURL:ourURL];
        
        
    }
    if (indexPath.row==3)
   {
    if ([UIImagePickerController isSourceTypeAvailable:
         UIImagePickerControllerSourceTypeSavedPhotosAlbum])
    {
        UIImagePickerController *imagePicker =
        [[UIImagePickerController alloc] init];
        imagePicker.delegate = self;
        imagePicker.sourceType =
        UIImagePickerControllerSourceTypePhotoLibrary;
        imagePicker.mediaTypes = [NSArray arrayWithObjects:
                                  (NSString *) kUTTypeImage,
                                  nil];
        imagePicker.allowsEditing = NO;
        [self presentModalViewController:imagePicker animated:YES];
    }
   }
    else if (indexPath.row==2)
    {
        UIApplication *ourApplication = [UIApplication sharedApplication];
        NSString *ourPath = @"http://www.google.com";
        NSURL *ourURL = [NSURL URLWithString:ourPath];
        [ourApplication openURL:ourURL];
    
    }
    else if (indexPath.row==1)
    {
        UIApplication *ourApplication = [UIApplication sharedApplication];
        NSString *ourPath = @"http://www.youtube.com/watch?v=TFFkK2SmPg4";
        NSURL *ourURL = [NSURL URLWithString:ourPath];
        [ourApplication openURL:ourURL];
        
    }
}
@end
Step 7
Finally we click on the run button to show the output.
Step 8
Output 1 in iPhone:
![output1-in-iphone.jpg]()
Output 2 in iPhone:
![output2-in-iphone.jpg]()
Output 3 in iPhone:
![output3-in-iPhone.jpg]()
Output 4 in iPhone:
![output4-in-iphone.jpg]()
Output 5 in iPhone:
![output5-in-iphone.jpg]()
Output 6 in iPhone:
![output6-in-iphone.jpg]()
Output 7 in iPhone:
![output7-in-iphone.jpg]()
Output 8 in iPhone:
![output8-in-iphone.jpg]()