2011-07-12 78 views
1

我有一個字符串列表的表視圖如下警報視圖:顯示在錶行被竊聽

String1 
String2 
String3 
String4 

我想讓其中的一個默認值,即用戶點擊時「 String3「,應該彈出一個警告視圖,詢問他們是否想讓該項目成爲默認值。

我該如何在我的表視圖控制器中實現此警報視圖?

回答

2

首先,您需要定義一個實例變量來跟蹤當前選中的字符串。在你的頭文件中這樣的東西將會很好。

NSString *selectedString; 

接下來,在您的tableView:didSelectRowAtIndexPath方法:委託方法創建一個警報視圖。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    selectedString = [stringArray objectAtIndex:indexPath.row]; 

    NSString *title = [NSString stringWithFormat:@"Make %@ default?", selectedString]; 

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:@"" delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes", nil]; 
    [alert show]; 
    [alert release]; 
} 

要在用戶點擊警報中的按鈕後保存該值,您應該使用UIAlertView委託。

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 2) 
    { 
    //Do something with selectedString here 
    } 
} 
+0

如果用戶點擊「是」,我會如何做到這一點? – Baub

+1

您需要使用UIAlertView代理。我剛剛更新了我的答案。 –

0

我沒有足夠的聲望在這裏評論。但你的if語句應該是:

if (buttonIndex == 1) 
    { 
    //Do something with selectedString here 
    } 

也就是說,如果你想在點擊yes按鈕時做某事。無論如何,感謝您的快速教程,除了輕微的錯字,它完美的工作。