2011-12-12 3 views

답변

6

추가 액션보기에 시트 다음 액션 시트의 상단에있는 완료 버튼 와 도구 모음을 추가하고 아래의 액션 시트를

를 닫 방법을 아래에 완료 버튼을 클릭 쓰기에 액션 시트 로 당신의 선택기를 추가
[actionSheet dismissWithClickedButtonIndex:0 animated:YES]; 

actionSheet=[[UIActionSheet alloc] initWithTitle:@"" delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil]; 
    [actionSheet showInView:self.view]; 
UIToolbar *pickerToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0,320,40)]; 
[pickerToolbar sizeToFit]; 
    pickerToolbar.barStyle = UIBarStyleBlackTranslucent; 
NSMutableArray *barItems = [[NSMutableArray alloc] init]; 

    UIBarButtonItem *cancelBtn = [[UIBarButtonItem alloc] initWithTitle:@"Cancel" style:UIBarButtonSystemItemCancel target:self action:@selector(cancel_clicked:)]; 
    [barItems addObject:cancelBtn]; 
    [cancelBtn release]; 
    UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; 
    [barItems addObject:flexSpace]; 
    [flexSpace release]; 
    UIBarButtonItem *doneBtn = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(done_clicked:)]; 
    [barItems addObject:doneBtn]; 
    [doneBtn release]; 
    [pickerToolbar setItems:barItems animated:YES]; 
    [actionSheet addSubview:pickerToolbar]; 
    [barItems release]; 
    [pickerToolbar release]; 

UIPickerView *picker = [[UIPickerView alloc] init]; 
picker.frame = CGRectMake(0, 44, 320, 216); 
picker.delegate = self; 
     picker.dataSource = self; 
     picker.showsSelectionIndicator = YES; 
[actionSheet addSubview:picker]; 
[picker release]; 

-(void)done_clicked:(id)sender 
{ 
    [actionSheet dismissWithClickedButtonIndex:0 animated:YES]; 
} 
-(void)cancel_clicked:(id)sender 
{ 
    [actionSheet dismissWithClickedButtonIndex:0 animated:YES]; 
} 
+0

를 사용하는 방법과 그 Actionsheet에 pickerview 및 도구 모음을 추가하는 매우 유용한 코드 생각? 피커 뷰를 닫는 코드도 제공되면 매우 유용합니다. ur 응답을위한 많은 감사 ... –

+0

http://pastebin.com/5MC9JJC0이 링크를 확인하십시오 – Narayana

+0

위의 링크를 열 수 없습니다. 이 콘텐츠를 여기에 붙여주세요. 그게 매우 도움이 될 것입니다 ... –

1

같은 목적으로 도구 모음을 사용할 수 있습니다. this link을보십시오. 여기에서도 동일한 해결책이 고려됩니다. 희망이 당신을 도울 수 있습니다. 감사.

+0

UActionSheet 해킹보다 훨씬 우수합니다. – Brian

+0

@Sarah : 링크 u는 필요한 것보다 훨씬 복잡합니다. 기본 요구 사항과 완료된 버튼 만 처리합니다. 해당 완료 버튼을 클릭하면 pickerview가 닫히고 닫힙니다. 우리는이 간단한 버전을 가질 수 있을까요? –

0

모든 사람이 작업 시트를 가져 와서 바 버튼을 추가했지만 뷰에서 uibutton을 추가하고 수퍼 뷰에서 메소드 제거를 수행했습니다. 아래 예제를 보아라. 나는이 코드를 성공적으로 시도했다. 나는이 밖으로는 u는 Actionsheet를 추가하는 방법에 대한 코드를 게시하시기 바랍니다 수있는 액션 시트

-(void)parserDidEndDocument:(NSXMLParser *)parser { NSLog(@"the marray data is %@",marray); // [self showpicker1]; if (marray.count == 0) { UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"Error" message:@"NO DATA FOUND" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil]; [alert show]; } 

[self showpicker1]; 
} 

-(void)showpicker1 { //view1=[[UIView alloc] initWithFrame:CGRectMake(55, 59, 171, 80)]; //[self.view addSubview:view1]; pv = [[UIPickerView alloc] initWithFrame:CGRectMake(55,79,171,0)]; pv.delegate = self; pv.dataSource = self; pv.showsSelectionIndicator = YES; [self.view addSubview:pv]; done=[UIButton buttonWithType:UIButtonTypeRoundedRect]; [done setFrame:CGRectMake(55, 59, 171, 20)]; [done setTitle:@"DONE" forState:UIControlStateNormal]; [done addTarget:self action:@selector(dismiss) forControlEvents:UIControlEventTouchDown]; [self.view addSubview:done]; } -(void)dismiss { [pv removeFromSuperview]; [done removeFromSuperview]; } 
관련 문제