2011-03-24 53 views
1

我使用TTMessageController來獲取收件人選擇器和用於寫短信的文本區域。然而,仍然存在我不需要的這個「主題」字段。如何定製TTMessageController字段?

我該如何刪除它?

這是我如何創建TTMessageController

self.second [[SecondViewController alloc] init]; 
[self.second release]; 

UINavigationViewController *navigationController = 
       [[UINavigationController alloc] 
       initWithRootViewController:self.second]; 
[self presentModalViewController:navigationController animated:YES]; 

SecondViewController是TTMessageController一個子類。那麼如何定製它以刪除/添加字段,特別是主題字段?

回答

1

創建TTMessageController的子類並覆蓋initWithNibName。在你的overidden initWithNibName方法中,設置_fields數組只保留你想要的字段。下面的例子將只保留To:字段。

/////////////////////////////////////////////////////////////////////////////////////////////////// 
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { 
    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) { 

     self.dataSource = [[AddressBookDataSource new] autorelease]; 


     _fields = [[NSArray alloc] initWithObjects: 
        [[[TTMessageRecipientField alloc] initWithTitle: TTLocalizedString(@"To:", @"") 
                  required: YES] autorelease], nil]; 



     self.showsRecipientPicker = YES; 

     self.title = TTLocalizedString(@"New Message", @""); 

     self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] 
                initWithTitle: TTLocalizedString(@"Cancel", @"") 
                style: UIBarButtonItemStyleBordered 
                target: self 
                action: @selector(cancel)] autorelease]; 
    } 

    return self; 
} 
+0

什麼是SMSMessageRecipientField?我必須創建它嗎? – 2011-03-24 12:07:32

+1

對不起,這是我項目中的TTMessageRecipientField的子類。您可以使用TTMessageRecipientField進行替換。 – 2011-03-24 12:10:52

相關問題