2011-04-10 24 views
0

我有一些文本字段。例如。這一個如何從對象中獲取我的NSString?

TTMessageField *field = [fields objectAtIndex:0]; 

NSLog(@"%S", field.description); 
NSLog(@"%@", field); 

TTMessageField Class Reference.

第二行打印

To: (
    "recipient" 
) 

和第三

To: (\n recipient\n) 

我不知道爲什麼,但該描述並不只返回收件人。它被這個To :()包裹着,就像你上面看到的那樣。

- (NSString*)description { 
    return [NSString stringWithFormat:@"%@", _title]; 
} 

是否可以提取接收者?像

NSString *str = field.description; 

然後用正則表達式來獲取收件人?

回答

0

我可以將TTMessageField更改爲TTMessageRecipientField其中延伸 TTMessageField。 TTMessageRecipientField有一個字段的收件人是一個NSArray並保持收件人的名稱:

TTMessageRecipientField *field = [fields objectAtIndex:0]; 
NSArray *recipient = [field recipients]; 
NSString *str = [recipient objectAtIndex:0]; 
0

我假設你正在使用Three20。試試這個

TTMessageField *field = [fields objectAtIndex:0]; 
NSString *myString = [field title]; 
+0

是的,我用three20,但你的例子只是打印「到:」 – 2011-04-10 15:23:46

1

您是否嘗試過使用「描述」之外的其他方法名稱?事實上,-description方法是NSObject的方法,並導致任何對象打印其值。在那裏可能會有某種壓倒一切的干擾,試着給別人一個名字,例如「-descriptionString」。

+0

descriptionString不存在。我在我的問題中添加了對類的引用 – 2011-04-10 16:57:37

+0

你可以寫一個類別:) – 2011-04-10 17:38:38

+0

你是什麼意思? – 2011-04-10 18:40:34