标签: modalviewcontroller

在不显示视图控制器的情况下使用 MFMailComposeViewController

我正在使用 MFMailComposeViewController 发送带有附件的电子邮件。在所有指南中,它选择将视图控制器呈现为模态视图,以便用户可以更改字段并选择发送或取消。

我不希望人们能够更改我输入的信息,所以我想知道是否可以强制它发送电子邮件而不进入模态视图?

我知道将 url 与 mailto 一起使用,但相信您无法添加附件。

如果有人知道这是否可行,或者如果他们知道如何做甚至更好,我将非常感谢您的帮助。

非常感谢。

email xcode attachment modalviewcontroller ios

0
推荐指数
1
解决办法
2890
查看次数

为什么tintColor在iOS7上的导航栏或工具栏上不起作用

在iPad的iOS7上,首先,我设置了一个模态视图控制器,大小为320*460,然后,在这个模态视图控制器中,我提出了另一个导航视图控制器,在此之后,导航栏和工具栏的色调颜色呈现的导航控制器变灰.我试图设置导航栏和工具栏的色调,但它不起作用.

然后我尝试直接呈现导航控制器,然后所有色调颜色都在导航栏和工具栏上工作.

我试过barTintColor导航栏和工具栏的属性,它的工作原理.

我不知道会发生什么.

更新

首先,我定义一个视图控制器:modalViewController现在的模态视图控制器如下:

if (DeviceIsPad()) // DeviceIsPad is a method defined somewhere to tell that the device is an iPad.
    modaViewController.modalPresentationStyle = UIModalPresentationFormSheet;

//here self is a normal view controller
[self presentViewController:modalViewController animated:YES completion:NULL];
Run Code Online (Sandbox Code Playgroud)

其次,定义导航视图控制器:navigationController如下所示呈现导航控制器:

if (DeviceIsPad())
    navigationController.modalPresentationStyle = UIModalPresentationCurrentContext;

// here self means the modalViewController mentioned above
[self presentViewController:navigationController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

我在navigationController的'viewDidLoad'方法中设置导航栏和工具栏栏项.

默认情况下,当导航视图控制器出来的时候,所有的工具栏按钮的项目(这些项目是与像只是基本的标题建Cancel,OK)变成灰色.

与此同时,我已经尝试设置tintColortool barnavigation bar.使用实例方法和外观方法(如[[UIToolBar appearance] setTintColor:[UIColor blueColor]]).但它仍然无效.

然后我尝试直接从普通视图控制器呈现navigationViewController上面提到的 …

modalviewcontroller ios ios7

0
推荐指数
1
解决办法
2265
查看次数

无法设置模态视图控制器的导航栏颜色

我在 iPhone / iOS 8 上展示了一个像这样的模态视图控制器:

UIApplication*          application        = [UIApplication sharedApplication];
UIWindow*               window             = application.windows[0];
UIViewController*       rootViewController = window.rootViewController;
SomeViewController*     someViewController;
UINavigationController* navigationController;

someViewController   = [[SomeViewController alloc] init];
navigationController = [[UINavigationController alloc] initWithRootViewController:someViewController];

// Set everything to black.
navigationController.navigationBar.barTintColor = [UIColor blackColor];
navigationController.navigationBar.tintColor    = [UIColor blackColor];
navigationController.navigationBar.barStyle     = UIBarStyleBlack;

navigationController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[rootViewController presentViewController:navigationController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

SomeViewController 是一个空的/新鲜的视图控制器,什么也不做(除了尝试将导航栏设置为黑色,但没有成功)。

这是在使用故事板的应用程序中,并且将NVSlideMenuController作为窗口的根。

发生的情况是显示了视图控制器,但导航栏/似乎完全透明,因为当我将someViewController的背景颜色设置为红色时,整个屏幕都是红色的(标题除外)。应用程序的其余部分有一个透明的导航栏。

另一件可能相关的事情是,当应用程序进入后台(使用 iPhone 主页按钮)然后再次进入前台时,视图控制器不再可见。

我在这里错过了什么或做错了什么?

objective-c uinavigationcontroller modalviewcontroller ios

0
推荐指数
1
解决办法
2710
查看次数

模态视图上的尺寸等级

我正在尝试为iPad和iPhone(4英寸)设置不同的限制。

我为iPhone设置了“常规高度”和“紧凑宽度”约束。但是这些限制显示在7.9英寸iPad,9.7英寸iPad上。

这些约束用于模式视图。

我如何使“常规高度”和“紧凑宽度”约束仅限于iPhone。

iphone ipad modalviewcontroller size-classes adaptive-layout

0
推荐指数
1
解决办法
621
查看次数