6

Trong bảng phân cảnh, tôi có thể thiết lập một khoảng cách từ nút thành UIViewController và làm cho nó xuất hiện một cách bình thường. Điều này hoạt động tốt. Tuy nhiên khi tôi thay đổi lớp học trong bảng phân cảnh từ UIViewController thành MFMailComposeViewController, nó không hoạt động chút nào. Tất cả những gì xuất hiện là thanh điều hướng ở trên cùng với phần còn lại của màn hình được tô màu đen. Tôi có đang tiếp cận sai không?Sử dụng MFMailComposeViewController trong bảng phân cảnh không hoạt động

Trả lời

2

Tôi gặp sự cố tương tự với ABPeoplePickerNavigationController và tôi cũng không thể tìm ra vấn đề là gì. Bạn có thể hoặc là

  1. Quay lại IBAction và tự tạo MFMailComposeViewController tự hiển thị và tự hiển thị nó.

  2. Nếu bạn muốn tiếp tục sử dụng Storyboards, mà tôi nghĩ là mong muốn thì bạn có thể tạo một wrapper lớp mà nội instantiates chức năng MFMailComposeViewController và sau đó là một đối tượng proxy và do đó truyền viewDid***viewWill*** -methods đến lớp bọc và cũng quay trở lại quan điểm của VC bọc trong một tài sản view chỉ đọc ... Bạn có được ý tưởng.

+0

Tôi vừa mới triển khai mã trong phần cuối. Dường như dễ nhất. Chúc mừng –

2

Ngoài các câu trả lời bằng Besi:

  1.  
  2.  
  3. Subclass MFMailComposeViewController và ghi đè initWithCoder: phương pháp.

Ví dụ:

-(id)initWithCoder:(NSCoder *)aDecoder 
{ 
    return [super init]; 
} 

Sau đó, nó sẽ làm việc với kịch bản, nhưng tôi nghĩ rằng các cửa hàng/thẻ/định nghĩa khác của bạn khỏi cảnh kịch bản sẽ không được áp dụng (bạn phải cấu hình soạn email bên prepareForSegue:sender: của bạn phương pháp).

+0

Tôi thực sự thích sự đơn giản của giải pháp của bạn. –

Các vấn đề liên quan