Monday, September 19, 2011

List of All countries into UIPicker View +iphone

- (void)ViewDidLoad{

cityPicker = [[[UIPickerView alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height+44, 320, 216)] autorelease];
    cityPicker.tag = 10;
    cityPicker.showsSelectionIndicator = YES;
    cityPicker.delegate = self;
    cityPicker.dataSource = self;
   
    pickerToolBar = [[[UIToolbar alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height, 320, 44)] autorelease];
    pickerToolBar.tag = 11;
    pickerToolBar.barStyle = UIBarStyleBlackTranslucent;
   
    canclePikerBtn = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(dismisscityPicker:)] autorelease];
    spacer = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil] autorelease];
    doneBtn = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(donecityPicker:)] autorelease];
   
    [pickerToolBar setItems:[NSArray arrayWithObjects:canclePikerBtn, spacer, doneBtn, nil]];
    [self.view addSubview:pickerToolBar];
   
       
    [self.view addSubview:cityPicker];
   
countriesArray = [[NSMutableArray alloc] init];
    NSMutableDictionary *countriesDict = [[NSMutableDictionary alloc] init];
    NSLocale *locale = [[[NSLocale alloc] initWithLocaleIdentifier: @"en_US"] autorelease];
   
    NSArray *countryArray = [NSLocale ISOCountryCodes];
    for (NSString *countryCode in countryArray)
    {
        NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
       
        NSString *displayNameString = [locale displayNameForKey:NSLocaleCountryCode value:countryCode];
        [countriesArray addObject:displayNameString];
        [countriesDict setObject:countryCode forKey: displayNameString];
        [pool release];
       
    }
    NSLog(@"countriesDict..%@",countriesDict);
    NSLog(@"countriesArray..%@",countriesArray);
   
    [countriesArray sortUsingSelector:@selector(compare:)];
    }




   
 }

// now calling button methods




- (IBAction)countrysupportBtnclicked :(id)sender{
    scroll.frame = CGRectMake(0, 0, 320, scroll.frame.size.height - (cityPicker.frame.size.height + 70) );
    [scroll scrollRectToVisible:countrysupportBtn.frame animated:YES];
    CGRect cityPickerTargetFrame = CGRectMake(0, self.view.bounds.size.height-216, 320, 216);
    CGRect toolbarTargetFrame = CGRectMake(0, self.view.bounds.size.height-216-44, 320, 44);
    [UIView beginAnimations:@"MoveIn" context:nil];
    [self.view viewWithTag:10].frame = cityPickerTargetFrame;
    [self.view viewWithTag:11].frame = toolbarTargetFrame;
    [UIView setAnimationDelegate:self];
    [UIView commitAnimations];

}
-(IBAction)dismisscityPicker:(id)sender{
    scroll.frame = CGRectMake(0, 0, 320, 480);
    CGRect toolbarTargetFrame = CGRectMake(0, self.view.bounds.size.height, 320, 44);
    CGRect cityPickerTargetFrame = CGRectMake(0, self.view.bounds.size.height+44, 320, 216);
    [UIView beginAnimations:@"MoveOut" context:nil];
    [self.view viewWithTag:9].alpha = 0;
    [self.view viewWithTag:10].frame = cityPickerTargetFrame;
    [self.view viewWithTag:11].frame = toolbarTargetFrame;
    [UIView setAnimationDelegate:self];
    [UIView commitAnimations];
}
-(IBAction)donecityPicker:(id)sender{
   
   
    scroll.frame = CGRectMake(0, 0, 320, 480);
   
    CGRect toolbarTargetFrame = CGRectMake(0, self.view.bounds.size.height, 320, 44);
    CGRect cityPickerTargetFrame = CGRectMake(0, self.view.bounds.size.height+44, 320, 216);
    [UIView beginAnimations:@"MoveOut" context:nil];
    [self.view viewWithTag:9].alpha = 0;
    [self.view viewWithTag:10].frame = cityPickerTargetFrame;
    [self.view viewWithTag:11].frame = toolbarTargetFrame;
    [UIView setAnimationDelegate:self];
    [UIView commitAnimations];
   
   
}


#pragma mark -
#pragma mark UIPickerView delegate

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
    return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
    return  self.countriesArray.count;
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
    NSLog(@"countriesArray..%@",countriesArray);
    return [self.countriesArray objectAtIndex:row];
}

- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
    countryNameLbl.text = [self.countriesArray objectAtIndex:row];
    [registerInfoDic setObject:countryNameLbl.text forKey:COUNTRY_SUPPORT];
}
//pickerview

No comments:

Post a Comment