Sunday 10 March 2013

(26)Database Using Plist (add and Edit phone number)



Ø (26)Database Using Plist (add and Edit phone number)

DJ Delegate.h


DJ Delegate.m


DJ ViewController.h


@property (nonatomic, retain) IBOutlet UILabel *nameLbl;

@property (nonatomic, retain) IBOutlet UITextView *phoneTxtView;

- (IBAction)editButtonPressed:(id)sender;

DJViewController.m


#import "AddRec.h"

@synthesize nameLbl,
            phoneTxtView;

- (IBAction)editButtonPressed:(id)sender
{
    AddRec *addRecVC = [[AddRec alloc] init];
   
    [self presentViewController:addRecVC animated:YES completion:nil];
}

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
   
    NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
            NSString *documentsPath = [paths objectAtIndex:0];
            NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
           
            if (![[NSFileManager defaultManager] fileExistsAtPath:plistPath])
            {
                        plistPath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];
            }
           
            NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:plistPath];
            NSString *errorDesc = nil;
            NSPropertyListFormat format;
           
    NSDictionary *temp = (NSDictionary *)[NSPropertyListSerialization propertyListFromData:plistXML
                                                                          mutabilityOption:NSPropertyListMutableContainersAndLeaves
                                                                                    format:&format errorDescription:&errorDesc];
   
            if (!temp)
            {
                        NSLog(@"Error reading plist: %@, format: %d", errorDesc, format);
            }
           
    NSString *personName = [temp objectForKey:@"Name"];
            NSMutableArray *phoneNumbers = [NSMutableArray arrayWithArray:[temp objectForKey:@"Phones"]];
           
   
    nameLbl.text = personName;
    phoneTxtView.text = nil;
    for (int i = 0 ; i < phoneNumbers.count ; i++)
    {
        phoneTxtView.text = [NSString stringWithFormat:@"%@\n%@", phoneTxtView.text, [phoneNumbers objectAtIndex:i]];
    }
}

AddRec.h


{
    NSString                 *personName;
            NSMutableArray        *phoneNumbers;
           
}
@property (nonatomic, retain) IBOutlet UITextField  *nameEntered,
                                                    *homePhone,
                                                    *workPhone,
                                                    *cellPhone;

@property (nonatomic, retain) IBOutlet UIToolbar *toolBar;

//@property (nonatomic, retain) NSString *personName;
//@property (nonatomic, retain) NSMutableArray *phoneNumbers;

- (IBAction) saveData;

- (IBAction) textFieldReturn:(id)textField;

AddRec.m

 

@synthesize nameEntered,
            homePhone,
            workPhone,
            cellPhone,
            toolBar;

- (void)viewDidLoad
{
    [super viewDidLoad];
   
    nameEntered.inputAccessoryView = toolBar;
    homePhone.inputAccessoryView = toolBar;
    workPhone.inputAccessoryView = toolBar;
    cellPhone.inputAccessoryView = toolBar;
       
   
    NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
            NSString *documentsPath = [paths objectAtIndex:0];
            NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
           
            if (![[NSFileManager defaultManager] fileExistsAtPath:plistPath])
            {
                        plistPath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];
            }
           
            NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:plistPath];
            NSString *errorDesc = nil;
            NSPropertyListFormat format;
           
    NSDictionary *temp = (NSDictionary *)[NSPropertyListSerialization propertyListFromData:plistXML mutabilityOption:NSPropertyListMutableContainersAndLeaves format:&format errorDescription:&errorDesc];
   
            if (!temp)
            {
                        NSLog(@"Error reading plist: %@, format: %d", errorDesc, format);
            }
           
    personName = [temp objectForKey:@"Name"];
            phoneNumbers = [NSMutableArray arrayWithArray:[temp objectForKey:@"Phones"]];
           
    nameEntered.text = personName;
            homePhone.text = [phoneNumbers objectAtIndex:0];
            workPhone.text = [phoneNumbers objectAtIndex:1];
            cellPhone.text = [phoneNumbers objectAtIndex:2];
}

- (IBAction) saveData
{
            NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
            NSString *documentsPath = [paths objectAtIndex:0];
            NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
           
            personName = nameEntered.text;
            phoneNumbers = [[NSMutableArray alloc] initWithCapacity:3];
            [phoneNumbers addObject:homePhone.text];
            [phoneNumbers addObject:workPhone.text];
            [phoneNumbers addObject:cellPhone.text];
           
           
            NSDictionary *plistDict = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects: personName, phoneNumbers, nil]
                                                          forKeys:[NSArray arrayWithObjects: @"Name", @"Phones", nil]];
           
            NSString *error = nil;
            NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict
                                                                   format:NSPropertyListXMLFormat_v1_0
                                                         errorDescription:&error];
           
    if(plistData)
            {
        [plistData writeToFile:plistPath atomically:YES];
    }
    else
            {
        NSLog(@"Error in saveData: %@", error);
    }
   
    [self dismissViewControllerAnimated:YES completion:nil];
}

- (IBAction) textFieldReturn:(id)sender
{
            [nameEntered resignFirstResponder];
    [homePhone resignFirstResponder];
    [cellPhone resignFirstResponder];
    [workPhone resignFirstResponder];
}

(25)Switching one view to another view using Timer in iPhone(IOs)



Ø (25)Switching one view to another view using Timer in iPhone(IOs)

- (void)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    self.window.rootViewController = self.viewController;   
    [self.window makeKeyAndVisible];
    [viewController showSplash];
}

 > IBOutlet UIView *modelView;
- (void)showSplash;
- (void)hideSplash;
-(void)showSplash {
    UIViewController *modalViewController = [[UIViewController alloc] init];
    modalViewController.view = modelView;
    [self presentModalViewController:modalViewController animated:NO];
    [self performSelector:@selector(hideSplash) withObject:nil afterDelay:2.0];
}
//hide splash screen
- (void)hideSplash {
    [[self modalViewController] dismissModalViewControllerAnimated:YES];
}


(24)Resign First Responder


Ø (24)Resign First Responder

-(BOOL) textFieldShouldReturn : (UITextField *) theTextField
{
[theTextField resignFirstReesponder];

Return YES;
}

(23)Saving and Retriving Data in iphone(IOs)



Ø (23)Saving and Retriving Data in iphone(IOs)

Save.h


@property (nonatomic, retain) IBOutlet UITextField *myTxtFld;

- (IBAction)saveButtonPressed:(id)sender;

- (IBAction)showMyData:(id)sender;

Save.m

@synthesize myTxtFld;

- (IBAction)saveButtonPressed:(id)sender
{
    [myTxtFld resignFirstResponder];
   
    [[NSUserDefaults standardUserDefaults] setValue:myTxtFld.text forKey:@"MyData"];
}

- (IBAction)showMyData:(id)sender
{
    NSString *myData = [[NSUserDefaults standardUserDefaults] valueForKey:@"MyData"];
   
    [[[UIAlertView alloc] initWithTitle:@"My Data"
                                message:myData
                               delegate:nil
                      cancelButtonTitle:@"OK" otherButtonTitles:nil] show];
}

(22)Simple Map Application



Ø (22)Simple Map Application

ip17ViewController.h

 

#import <MapKit/MapKit.h>
@property (nonatomic, retain) IBOutlet UISegmentedControl *mapTypeSegment;

@property (nonatomic, retain) IBOutlet MKMapView *myMapView;

- (IBAction)maptypeChange;

ip17ViewController.m

 

#import "MapStruct.h"
@synthesize mapTypeSegment, myMapView;
- (IBAction)maptypeChange
{
    if(mapTypeSegment.selectedSegmentIndex == 0)
        [myMapView setMapType:MKMapTypeStandard];
    else if(mapTypeSegment.selectedSegmentIndex == 1)
        [myMapView setMapType:MKMapTypeSatellite];
    else if(mapTypeSegment.selectedSegmentIndex == 2)
        [myMapView setMapType:MKMapTypeHybrid];
}
- (void)viewDidLoad
{
    [super viewDidLoad];
   
    myMapView.showsUserLocation = YES;
   
    MKCoordinateRegion region;
    region.center.latitude = 40.71435;
    region.center.longitude = -74.00597;
    //region.span.longitudeDelta =  1.5f;
    //region.span.latitudeDelta =  0.5f;

    [myMapView setRegion:region animated:YES];
   
    MapStruct *msObj = [[MapStruct alloc] init];
    msObj.title = @"New York";
    msObj.subtitle = @"The City That Never Sleeps!";
    msObj.coordinate = region.center;
   
    [myMapView addAnnotation:(id)msObj];
   
    //[myMapView selectAnnotation:(id)msObj animated:YES];
   
   
   
    MKCoordinateRegion region2;
    region2.center.latitude = 47.60621;
    region2.center.longitude = -122.33207;
    //region2.span.longitudeDelta =  0.5f;
    //region2.span.latitudeDelta =  0.5f;
   
    [myMapView setRegion:region2 animated:YES];
   
    MapStruct *msObj2 = [[MapStruct alloc] init];
    msObj2.title = @"Seattle";
    msObj2.subtitle = @"Microsoft Headquarter.";
    msObj2.coordinate = region2.center;
   
    [myMapView addAnnotation:(id)msObj2];
   
    //[myMapView selectAnnotation:(id)msObj2 animated:YES];
   
   
   
    MKCoordinateRegion region3;
    region3.center.latitude = 37.32300;
    region3.center.longitude = -122.03218;
    region3.span.longitudeDelta =  50.0f;
    region3.span.latitudeDelta =  50.0f;
   
    [myMapView setRegion:region3 animated:YES];
   
    MapStruct *msObj3 = [[MapStruct alloc] init];
    msObj3.title = @"Cupertino";
    msObj3.subtitle = @"Apple Inc.";
    msObj3.coordinate = region3.center;
   
    [myMapView addAnnotation:(id)msObj3];
   
    [myMapView selectAnnotation:(id)msObj3 animated:YES];
}


MapStruct.h


#import <MapKit/MKAnnotation.h>

@property (nonatomic, assign) CLLocationCoordinate2D coordinate;
@property (nonatomic, copy) NSString *title;
@property (nonatomic, copy) NSString *subtitle;

MapStruct.m


@synthesize coordinate, title, subtitle;

(21)Validation for allowed Email Format for textfields


Ø (21)Validation for allowed Email Format for textfields

- (void)textFieldDidEndEditing:(UITextField *)textField
{

   
    NSString *emailString = textField.text;
  
    NSString *emailReg = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",emailReg];
    if (([emailTest evaluateWithObject:emailString] != YES) || [emailString isEqualToString:@""])
    {
        UIAlertView *loginalert = [[UIAlertView alloc] initWithTitle:@" Enter Email in" message:@"abc@example.com format" delegate:self
                                                   cancelButtonTitle:@"OK" otherButtonTitles:nil];
       
        [loginalert show];
    }
   
}         
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDkrJIzmOXlgl-oN85i3ZgjmIVQBxcR_OaINX5w6555V_FVjp8worKwLkxbzfUkGe2NTHzUelT_GH7NVJ4JSOaUEhvT3jF7WK2mq40xNPrXYfoikos3zhwHQOT1GatWnOKA19kKoQMUAb_/s1600/sync-crm-iphone-3.png
 - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
     NSMutableArray *sectionedArray = [[[NSMutableArray alloc]init]autorelease]; 
      for(char c ='A' ; c <= 'Z' ;  c++)
      {
          [sectionedArray addObject:[NSString stringWithFormat:@"%c",c]];
       }
 return sectionedArray;
}
- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index 
{
    NSInteger count = 0;
    for(NSString *character in nameIndex)
    {
        if([character isEqualToString:title])
        {
            return count;
        }
        count ++;
    }
    return 0;
}

Here nameIndex  is my array with contact details.


(20)Main/Flip Utility based application also save data in iphone(IOs)



Ø (20)Main/Flip Utility based application also save data in iphone(IOs)

Delegate.m

- (void)applicationDidBecomeActive:(UIApplication *)application
{


    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    temp1 = [prefs boolForKey:@"key1"];
    temp2 = [prefs boolForKey:@"key2"];
    temp3 = [prefs boolForKey:@"key3"];
    temp4 = [prefs boolForKey:@"key4"];
   
}

DJ_16_Utility1MainViewController.h

#import "DJ_16_Utility1FlipsideViewController.h"
//# import "GlobalVariable.h"

//BOOL temp;

@interface DJ_16_Utility1MainViewController : UIViewController <DJ_16_Utility1FlipsideViewControllerDelegate,UITextFieldDelegate>

@property (nonatomic, retain) IBOutlet UITextField *t1;
@property (nonatomic, retain) IBOutlet UITextField *t2;

@property (nonatomic, retain) IBOutlet UILabel *Add1;
@property (nonatomic, retain) IBOutlet UILabel *Add2;
@property (nonatomic, retain) IBOutlet UILabel *Sub1;
@property (nonatomic, retain) IBOutlet UILabel *Sub2;
@property (nonatomic, retain) IBOutlet UILabel *Mul1;
@property (nonatomic, retain) IBOutlet UILabel *Mul2;
@property (nonatomic, retain) IBOutlet UILabel *Div1;
@property (nonatomic, retain) IBOutlet UILabel *Div2;

@property (nonatomic, retain) IBOutlet UIToolbar *u1;


- (IBAction)showInfo:(id)sender;
- (IBAction)btnResult:(id)sender;
- (IBAction)btnDone:(id)sender;
- (IBAction)About:(id)sender;


@end

DJ_16_Utility1MainViewController.m


#import "DJ_16_Utility1MainViewController.h"
#import "DJ_16_Utility1FlipsideViewController.h"
#import "GlobalVariable.h"

@implementation DJ_16_Utility1MainViewController

@synthesize t1;
@synthesize t2;
@synthesize Add1;
@synthesize Add2;
@synthesize Sub1;
@synthesize Sub2;
@synthesize Mul1;
@synthesize Mul2;
@synthesize Div1;
@synthesize Div2;
@synthesize u1;

- (void)textFieldDidEndEditing:(UITextField *)textField
{
    NSString *phoneRegex = @"^([0-9]+)?(\\.([0-9]{1,2})?)?$";
    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
   
    if([phoneTest evaluateWithObject:textField.text]==NO)
    {
        UIAlertView *alertView = [[UIAlertView alloc]
                                  initWithTitle:@"Validation" message:@"Only Number allow."
                                  delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];
       
        [alertView show];
        [textField becomeFirstResponder];
    }
}

- (IBAction)btnResult:(id)sender
{
    if (temp1)
    {
        Add1.hidden = false;
        Add2.hidden = false;
    }
    else
    {
        Add1.hidden = true;
        Add2.hidden = true;
    }
   
    if (temp2)
    {
        Sub1.hidden = false;
        Sub2.hidden = false;
    }
    else
    {
        Sub1.hidden = true;
        Sub2.hidden = true;
    }
   
    if (temp3)
    {
        Mul1.hidden = false;
        Mul2.hidden = false;
    }
    else
    {
        Mul1.hidden = true;
        Mul2.hidden = true;
    }
    if (temp4)
    {
        Div1.hidden = false;
        Div2.hidden = false;
    }
    else
    {
       
        Div1.hidden = true;
        Div2.hidden = true;
    }
   

    if(t1.text.length != 0 && t2.text.length !=0)
    { 
        if(t2.text.intValue == 0)
        {
            UIAlertView *alertView = [[UIAlertView alloc]
                                      initWithTitle:@"Validation" message:@"PLEASE,Divide By 0 Not Possible."
                                      delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];
           
            [alertView show];
        }
        else
        {
            if(t1.text.length != 0 && t2.text.length !=0)
            {   
             int result1 = [t1.text intValue] + [t2.text intValue];
                   Add2.text = [NSString stringWithFormat:@"%d", result1];
            }
            else
            {
                UIAlertView *alertView = [[UIAlertView alloc]
                                          initWithTitle:@"Validation" message:@"PLEASE, Fill data."
                                          delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];
               
                [alertView show]; 
               
                if(t1.text.length ==0)
                {
                    [t1 becomeFirstResponder];
                }
                else
                {
                    [t2 becomeFirstResponder];
                }
            }
        //int result1 = [t1.text intValue] + [t2.text intValue];
        int result2 = [t1.text intValue] - [t2.text intValue];
        int result3 = [t1.text intValue] * [t2.text intValue];
        int result4 = [t1.text intValue] / [t2.text intValue];
       
       // Add2.text = [NSString stringWithFormat:@"%d", result1];
        Sub2.text = [NSString stringWithFormat:@"%d", result2];
        Mul2.text = [NSString stringWithFormat:@"%d", result3];
        Div2.text = [NSString stringWithFormat:@"%d", result4];
        }
       
        //t3.text = [NSString stringWithFormat:@"%d", result];
        //l1.text = @"Addition:"; 
    }
    //else
     if(t1.text.intValue == 0 )
    {
        UIAlertView *alertView = [[UIAlertView alloc]
                                  initWithTitle:@"Validation" message:@"PLEASE, Fill data."
                                  delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];
       
        [alertView show]; 
       
        if(t1.text.length ==0)
        {
            [t1 becomeFirstResponder];
        }
        else
        {
            [t2 becomeFirstResponder];
        }
    }

}

- (IBAction)btnDone:(id)sender
{
    [t1 resignFirstResponder];
    [t2 resignFirstResponder];
}

- (void)viewWillAppear:(BOOL)animated
{
    //[super viewWillAppear:animated];
    NSLog(@"viewWillAppear1:");
   


   

}

-(void)viewDidAppear:(BOOL)animated
{
        [self btnResult:0];
}
- (void)viewDidLoad
{
    [super viewDidLoad];
    t1.inputAccessoryView = u1;
    t2.inputAccessoryView = u1;


    if (temp1)
    {
        Add1.hidden = false;
        Add2.hidden = false;
    }
    else {
        Add1.hidden = true;
        Add2.hidden = true;
    }
   
    if (temp2)
    {
        Sub1.hidden = false;
        Sub2.hidden = false;
    }
    else
    {
        Sub1.hidden = true;
        Sub2.hidden = true;
    }
   
    if (temp3)
    {
        Mul1.hidden = false;
        Mul2.hidden = false;
    }
    else
    {
        Mul1.hidden = true;
        Mul2.hidden = true;
    }
    if (temp4)
    {
        Div1.hidden = false;
        Div2.hidden = false;
    }
    else
    {
       
        Div1.hidden = true;
        Div2.hidden = true;
    }


   
}


- (void)viewDidUnload
{
    [super viewDidUnload];

}



- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}

#pragma mark - Flipside View

- (void)flipsideViewControllerDidFinish:(DJ_16_Utility1FlipsideViewController *)controller
{
    [self dismissModalViewControllerAnimated:YES];
 
}

- (IBAction)showInfo:(id)sender
{   
    DJ_16_Utility1FlipsideViewController *controller = [[DJ_16_Utility1FlipsideViewController alloc] initWithNibName:@"DJ_16_Utility1FlipsideViewController" bundle:nil];
    controller.delegate = self;
    controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:controller animated:YES];
}
- (IBAction)About:(id)sender
{
    [GlobalVariable abc];
}

@end

DJ_16_Utility1FlipsideViewController.h

 

#import <UIKit/UIKit.h>
BOOL temp1,temp2,temp3,temp4;

@class DJ_16_Utility1MainViewController;
@class DJ_16_Utility1FlipsideViewController;

@protocol DJ_16_Utility1FlipsideViewControllerDelegate
- (void)flipsideViewControllerDidFinish:(DJ_16_Utility1FlipsideViewController *)controller;
@end

@interface DJ_16_Utility1FlipsideViewController : UIViewController

@property (weak, nonatomic) id <DJ_16_Utility1FlipsideViewControllerDelegate> delegate;

@property (nonatomic, retain) IBOutlet UISwitch *s1;
@property (nonatomic, retain) IBOutlet UISwitch *s2;
@property (nonatomic, retain) IBOutlet UISwitch *s3;
@property (nonatomic, retain) IBOutlet UISwitch *s4;

- (IBAction)done:(id)sender;

- (IBAction) saveState;

-(IBAction) loadMySubview:(id)sender;


@end

DJ_16_Utility1FlipsideViewController.m


#import "DJ_16_Utility1FlipsideViewController.h"
#import "DJ_16_Utility1MainViewController.h"
//#import "GlobalVariable.h"



@implementation DJ_16_Utility1FlipsideViewController

@synthesize delegate = _delegate;
@synthesize s1;
@synthesize s2;
@synthesize s3;
@synthesize s4;


//-(IBAction)showSecond
//{
//    DJ_16_Utility1FlipsideViewController *controller = [[DJ_16_Utility1FlipsideViewController alloc] init];
//    controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
//   
//    [self presentViewController:controller animated:YES completion:nil];
//}

- (void)viewDidLoad
{
 
   
    [super viewDidLoad];
    s1.on = temp1;
    s2.on = temp2;
    s3.on = temp3;
    s4.on = temp4;
}


- (IBAction) saveState
{
   // [[NSUserDefaults standardUSerDefaults] setBool:s1.on forKey:@"Key1"];
    //[NSUserDefaults standardUserDefaults] setBool:s1.on forKey:
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    [prefs setBool:temp1 forKey:@"key1"];
    [prefs setBool:temp2 forKey:@"key2"];
    [prefs setBool:temp3 forKey:@"key3"];
    [prefs setBool:temp4 forKey:@"key4"];
   
    [prefs synchronize];
}


//- (IBAction)saveValue
//{
//    NSUserDefaults *preferences = [NSUserDefaults standardUserDefaults];
//    [preferences setBool:temp1 forKey:@"switchOnOff1"];
//    [preferences setBool:temp2 forKey:@"switchOnOff2"];
//    [preferences setBool:temp3 forKey:@"switchOnOff3"];
//    [preferences setBool:temp4 forKey:@"switchOnOff4"];
//    [preferences synchronize];
//   
//    


//NSString *value = @"ON";
//
//NSUserDefaults *userPreferences = [NSUserDefaults standardUserDefaults];
//if(!s1.on){
//    value = @"OFF";
//    [userPreferences setObject:value forKey:@"stateOfSwitch"];
//}
//[userPreferences setObject:value forKey:@"stateOfSwitch"];

   
       //store value to nsuserdefaulrs
    //    [[NSUserDefaults standardUserDefaults] setBool:temp1 forKey:@"switchStatus"];
   
       
        //get value from nsuserdefaulrs
      //  NSLog(@"%@",temp1);
       
        //[s1 setOn:[[NSUserDefaults standardUserDefaults] boolForKey:@"switchStatus"]];
   
//}

//- (BOOL)readValue
//{
//    NSUserDefaults *preferences = [NSUserDefaults standardUserDefaults];
//    return [preferences boolForKey:@"switchOnOff1"];
//     return [preferences boolForKey:@"switchOnOff2"];
//     return [preferences boolForKey:@"switchOnOff3"];
//     return [preferences boolForKey:@"switchOnOff4"];
//}


- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    temp1 = s1.on;
    temp2 = s2.on;
    temp3 = s3.on;
    temp4 = s4.on;


}
- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    NSLog(@"viewWillAppear:");
   
}


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}

#pragma mark - Actions

- (IBAction)done:(id)sender
{
      
    [self.delegate flipsideViewControllerDidFinish:self];
    temp1 = s1.on;
    temp2 = s2.on;
    temp3 = s3.on;
    temp4 = s4.on;
   
    [self saveState];


}

@end

GlobalVariable.h


#import <Foundation/Foundation.h>

@interface GlobalVariable : NSObject

+(void)abc;
//-(void)xyz:(UITextField *)textField;

@end

GlobalVariable.m


#import "GlobalVariable.h"
#import "DJ_16_Utility1FlipsideViewController.h"

@implementation GlobalVariable

+(void)abc
{
UIAlertView *alertView = [[UIAlertView alloc]
                          initWithTitle:@"Validation" message:@"Super Method call."
                          delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];

[alertView show];
}

//-(void)xyz:(UITextField *)textField
//{
//    NSString *phoneRegex = @"^([0-9]+)?(\\.([0-9]{1,2})?)?$";
//    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
//   
//    if([phoneTest evaluateWithObject:textField.text]==NO)
//    {
//        UIAlertView *alertView = [[UIAlertView alloc]
//                                  initWithTitle:@"Validation" message:@"Only Number allow."
//                                  delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:nil, nil];
//       
//        [alertView show];
//        [textField becomeFirstResponder];
//    }
//
//}
@end