iOS

iOS使用MFMessageComposeViewControl

2016-10-14  本文已影响515人  码农老王

如果你使用了UINavigationController+FDFullscreenPopGesture, 没有额外的设置, 并且使用了 MFMessageComposeViewController在APP内使用短信功能.
那么将会出现以下这个情况.


导航栏位置被遮挡

原因是fd使用runtime在每个显示的viewcontroller都默认加了一个bar.

解决方案:

在UINavigationController+FDFullscreenPopGesture.m文件里找到

添加以下代码

#import <objc/runtime.h>

NSString *className = [NSString stringWithUTF8String:class_getName([appearingViewController class])];
if ([className isEqualToString:@"CKSMSComposeController"]) {
    return;
}

即可解决.

同时还有一个fd_viewControllerBasedNavigationBarAppearanceEnabled属性, 但是设置后无效, 按道理这个属性应该是解决这个问题的,不知什么原因不起作用, 待我以后再翻一翻FD的源码看看到底什么原因.

上一篇 下一篇

猜你喜欢

热点阅读