2011-12-12 47 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

請你張貼代碼如何添加工作表,以及如何將pickerview和工具欄添加到該工作表?如果還提供解除選取器視圖的代碼,這將非常有幫助。非常感謝你的回覆... –

+0

http://pastebin.com/5MC9JJC0檢查鏈接 – Narayana

+0

我無法打開上面的鏈接。你可以在這裏粘貼內容嗎?這將是非常有用的... –

1

您可以使用工具欄來達到同樣的目的。看看this link。在這裏,考慮到相同的解決方案。希望這可以幫助你。謝謝。

+0

比黑客更好UIActionSheet – Brian

+0

@Sarah:你提供的交易比所需的複雜得多。我的要求只是處理基本的pickerview和完成按鈕頂部並關閉點擊完成按鈕的pickerview。我們可以有一個更簡單的版本嗎? –

0

每個人都採取了行動表,然後添加欄按鈕,但只是從視圖中添加了uibutton並從超級視圖中刪除了方法。顯示下面的例子,我試着這個代碼成功。我認爲這是非常有用的代碼與出使用行動表

-(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]; } 
相關問題