2012-01-20 45 views
1

我有一個表,其中每一行都包含一個textfield.Alltertext在所有行是文本字段我想檢索數據到數組中。可以任何一個告訴我的想法檢索每一行是文本字段的數據?檢索iphone中的表的數據

回答

1

我不敢相信你。語法不好,沒有研究。

要獲得所有文本字段的數組,我會做:

NSArray *subviews = self.view.subviews; 
NSMutableArray *textFelds = [[NSMutableArray alloc]init]; 
NSMutableArray *indexPaths = [[NSMutableArray alloc]init]; 


NSObject *obj; 

爲(以子視圖的obj){ 如果([OBJ類] == [UITextField類]){ [文本框ADDOBJECT :OBJ]; CGPoint location = obj.center; NSIndexPath * indexPath = [self.tableView indexPathForRowAtPoint:location]; [indexPaths addObject:indexPath]; } }

它首先獲取主視圖的所有子視圖,然後確定它們是否是文本字段。如果它們是textFields,它將它添加到一個數組,並且還獲取indexPath。

我希望我已經回答了你的問題

1

你有類似,其中的細節行具有文本字段,哪些不是。

您可以通過使用細胞的兩種不同的國王獲得此功能

static NSString *CellIdentifierNormal = @"Cell"; 
    static NSString *CellIdentifierTF = @"Cell"; 
    UITableViewCell *cell; 
    if(indexPath.row %2 == 0){ //Example 
     cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifierNormal];  
     if (cell == nil) { 
      cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifierNormal] autorelease]; 
    } 
    } else { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifierTF] autorelease];  
TF *tf = [[TF alloc] init]; 
tf.tag = 10; 
    } 

在文本字段行的情況下,不應該使用它重新的dequeueReusableCellWithIdentifier使用現有的細胞,使文本字段中的數據可能會損壞[當您的數據行的大小大於表的大小時會出現這種情況 - 每當你想在表中的行數收集TF的

只要運行循環中的數據高度]

,並檢查相同的條件下,你是USI在創建單元格。

通過使用來自TF的標籤號[10]來訪問細胞和來自細胞的TF獲得文本