我如何知道 AppDelegate 中的方向发生了变化

2023-12-01

设备如何知道方向变化的功能是 -(void)viewWillLayoutSubviews 和 -(void)viewDidLayoutSubviews 但是,它们只是在控制器中; 现在我想知道是否有类似的函数可以知道文件 AppDelegate.m 中方向的变化

- (void)navigationController:(UINavigationController *)navigationController
      willShowViewController:(UIViewController *)viewController
                    animated:(BOOL)animated {

    UINavigationBar *morenavbar = navigationController.navigationBar;
    UINavigationItem *morenavitem = morenavbar.topItem;
    //We don't need Edit button in More screen.
    morenavitem.rightBarButtonItem = nil;
    morenavitem.title = nil;
    UIImage *backgroundImage = [UIImage imageNamed:@"nav.png"];

    [morenavbar setBackgroundImage:backgroundImage 
         forBarMetrics:UIBarMetricsDefault];

    UIDeviceOrientation currentDeviceOrientation = 
           [[UIDevice currentDevice] orientation];
    UIInterfaceOrientation currentInterfaceOrientation = 
           [[UIApplication sharedApplication] statusBarOrientation];
    if (UIDeviceOrientationIsLandscape(currentDeviceOrientation)||
        UIDeviceOrientationIsLandscape(currentInterfaceOrientation)){
        UIImage *backgroundImageLandscape = [UIImage imageNamed:@"navbar_landscape.png"];
        [morenavbar setBackgroundImage:backgroundImageLandscape forBarMetrics:UIBarMetricsDefault];
    }

}

您可以注册轮换发生时的通知

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(handleDidChangeStatusBarOrientationNotification:) 
                                             name:UIApplicationDidChangeStatusBarOrientationNotification 
                                           object:nil];

然后实现消息发送时调用的方法

- (void)handleDidChangeStatusBarOrientationNotification:(NSNotification *)notification;
{
  // Do something interesting
  NSLog(@"The orientation is %@", [notification.userInfo objectForKey: UIApplicationStatusBarOrientationUserInfoKey]);
}

或者查看文档UIApplicationDidChangeStatusBarOrientationNotification这将为您提供

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何知道 AppDelegate 中的方向发生了变化 的相关文章

  • 存储应用内购买的正确且安全的方式

    在设备上存储应用内购买的最佳方式是什么 这样购买也可以离线访问 但是 购买的安全性没有受到损害 不要在设备上存储任何有价值的东西 因为它不可信 并且很容易被有动机的人破坏 现在 所有这一切都取决于所购买物品的类型和价值 以及如果物品受损会发
  • @testable 导入和桥接标头不能同时工作

    我的框架项目有测试目标 其中包括 Obj C 测试 使用 testable import 进行 Swift 测试以测试内部类和函数 一些用 Obj C 编写的用于我的测试的实用程序 应该在 1 和 2 中使用 由于我想使用 Obj C ut
  • 无法使用 double 类型的左值初始化“id _NonNull”类型的参数

    目标C 我有多个 double long long NSString 和 int 类型的变量 我想将它们放入一个数组中 以便在 CSV 文件中作为单行打印 NSArray ValArray NSArray arrayWithObjects
  • iPhone SQLite日期问题

    数据库创建得很好 插入工作也很好 我对下面的 select 语句有问题 它不返回任何记录 也没有错误 选择任何其他字段都可以正常工作 谁能发现我做错了什么吗 create table if not exists data pkey inte
  • 什么是 Core Audio 错误 561015905?为什么当我使用锁定按钮时会发生这种情况?

    自从升级到 iOS 10 和 Xcode 8 以来 每当我使用锁定按钮关闭屏幕时 我的 iOS 应用程序就会抛出错误并崩溃 错误是 由于未捕获的异常 com apple coreaudio avfaudio 而终止应用程序 原因 错误 56
  • 突出显示 PDF 文档 iPhone xcode 中的文本

    嗨朋友们 我正在使用 Web 视图开发一本电子书 我正在使用 PDF 文档加载 Web 视图 现在我想开发搜索功能 但我不明白如何实现它 所以请给我一个解决方案 提前致谢 而不是使用UIWebView 您可能想考虑使用 Quartz 2DC
  • iPhone 强制旋转

    我已经阅读了大量关于轮换的内容 但没有找到我的查询的解决方案 开始 我的选项卡中有一个带有选项卡栏和隐藏导航控制器的纵向应用程序 在应用程序中的某个时刻 下一个视图必须是横向视图 XIB 布局是横向完成的 因此我想在没有任何翻译或像素移动代
  • 使用 Accelerate 框架 32 位与 64 位进行 swift 矩阵乘法

    我正在尝试使用 Accelerate 框架在 Swift 中进行矩阵乘法 使用了vDSP mmulD 这在 iPhone6 6 plus iPad Air 模拟器 所有 64 位架构 中完美运行 但不适用于任何 32 位架构设备 看来 32
  • 图像持久化和延迟加载与 Dispatch_Async 的冲突

    我正在开发一个提要阅读器 我通过使用 nsxmlparser 解析 rss 提要来完成它 我还有从 CDATA 块中获取的缩略图对象 void parser NSXMLParser parser foundCDATA NSData CDAT
  • NSManagedObjectContext 的performBlockAndWait:不在接收者队列上执行

    我注意到有可能NSManagedObjectContext与NSMainQueueConcurrencyType to performBlockAndWait 并在接收者 主 队列以外的队列上执行该块 例如 以下代码会导致我的parentC
  • iOS 10 中未显示锁定屏幕上基于信标的应用程序建议

    我的应用程序使用后台信标扫描 我已经写了locationManager requestAlwaysAuthorization and locationManager startMonitoring for region 在我的代码中 当我打
  • iOS9 按需访问和下载资源

    我正在尝试实现新的 iOS9 功能应用程序细化 我了解如何在 Xcode 7 中标记图像并启用按需资源 但我不明白如何在我的应用程序中实现 NSBundleResourceRequest 有人可以帮助我 我将不胜感激 大部分信息都可以在 A
  • 需要从另一个viewController调用其他viewController中的方法

    我有一个具有多个视图控制器的应用程序 其中一些视图控制器包含运行各种任务的方法 我需要做的是 当初始 viewController 加载时 在其他 viewController 中调用这些方法 以便它们在后台运行 但是 我在执行此操作时遇到
  • 如何使用mapkit和swift在设定位置覆盖一个圆圈

    我在尝试弄清楚如何在与用户位置不同的所需位置显示透明圆形或矩形时遇到困难 我是 Mapkit 的初学者 所以提前致谢 class FirstViewController UIViewController MKMapViewDelegate
  • 规划带有透明覆盖图像的科尔多瓦相机插件

    我正在编写和应用程序 需要在相机上显示透明图像 例如作为构图指南 该应用程序必须至少在 iOS 和 Android 上发布 到目前为止 我已经找到了一个具有功能 iOS 源的插件 okstate plugin camera overlay
  • 使用预先存在的数据库创建 PhoneGap iOS 应用程序

    我最近开始开发一个使用 PhoneGap 版本 2 8 0 作为药物查找器的应用程序 过去 我创建了该工具的 Web 版本 它使用 jQuery Mobile 和 PHP 来访问远程 SQL 数据库 PhoneGap 似乎是一个很有吸引力的
  • 如何为应用程序加载器创建上传文件?

    当我使用应用程序加载器时 它要求我 选择 要上传的文件 如果我理解正确 它应该是我在应用程序包的 产品 下看到的 appName app 文件 我右键单击它并选择 在 Finder 中显示 以访问库中的特定文件 那么我应该将其压缩 ZIP
  • Twitter iOS 个人资料页面配置

    我正在尝试构建一个类似于 Twitter 个人资料页面的页面 看起来他们正在使用基本的UITableView 最上面的配置文件就是tableHeaderView 这些选项卡是UISegmentedControl在SectionRowHead
  • PerformSegueWithIdentifier 不会产生带有标识符错误的 Segue

    我很难让 PerformSegueWithIdentifier 正常工作 我不断得到 Receiver
  • OSX 的网络连接 NSNotification?

    我只需要在分配有效 IP 地址时发出通知即可 我尝试过通过 SCreachability 进行轮询 但这似乎效率低下 有什么建议么 这看起来应该很简单 但我已经努力了几个小时才能让任何东西发挥作用 我知道这有点旧 但所选的答案并不理想 SC

随机推荐

  • 设置TableRow下TextView的layout_weight

    这个问题实际上与这篇文章相关以编程方式设置 TextView 的布局权重 根据答案 我只需要如下设置 TextView 布局参数并设置stretchColumn 属性 但是通过将以下代码添加到我的代码中 它会使 textView 从表布局中
  • 路径上的 d3.js 工具提示

    我读到的很多关于 d3 js 和工具提示的内容都提到了图表上的各个点 相反 我的图表使用一条长路径进行渲染 我想知道如何将鼠标悬停方法应用于这样的路径 然后我将相应地绑定一个工具提示 div http jsfiddle net ericps
  • 基于具有不同索引的参考数据帧连接数据帧中的特定列对

    我的目标是根据以下对连接数据帧 源 中的列 在单独的数据帧 参考 中进行了描述 生成的数据框应将源中的列标题替换为参考中的索引标签 用于引用的数据框如下所示 df1 pd DataFrame dict FIRST Alpha Alpha C
  • 使用 Indy 执行 IPv6 反向 DNS 查找

    我正在使用 Indy 使用以下代码执行反向 IPv4 查找 function ReverseDNSLookup const IPAddress String const DNSServer String Timeout Retries In
  • Twitter 的 Bootstrap 移动版:更多专栏

    关于twitter bootstrap 我目前有一个设计 在网格中显示图片 div class row fluid div class image span 4 div div class image span 4 div div clas
  • 稀疏矩阵图 matlab

    我有一个 5000 5000 稀疏矩阵 有 4 个不同的值 我想用 4 种不同的颜色可视化非零元素 以便我可以识别这些值的比率以及它们之间的关系 我使用imagesc但我不能很好地识别不同的值 特别是比率较小的值 我认为如果我为每个值使用一
  • plotly choropleth 地图:显示国家/地区名称

    考虑以下 R 代码以绘图方式生成分区统计图 devtools install github ropensci plotly library plotly df lt read csv https raw githubusercontent
  • VB.NET 中具有两个属性的 DistinctBy

    看着选择列表中两个不同的属性可以使用具有两个属性的 DistinctBy 扩展方法 我尝试将其转换为 vb net 但没有得到预期的结果 测试类 Public Class Test Public Property Id As Integer
  • C++ 编译器优化器是否允许破坏我的析构函数被多次调用的能力?

    我们曾经采访过一位非常有经验的 C 开发人员 他无法回答以下问题 C 中派生类析构函数是否需要调用基类析构函数 显然答案是不 C 无论如何都会自动调用基类析构函数 但是如果我们尝试拨打电话怎么办 在我看来 结果将取决于基类析构函数是否可以被
  • 如何截取 Android 布局的屏幕截图?

    我的问题是如何使用内置屏幕截图来截取屏幕截图 任何提示或示例代码将不胜感激 有两种方法你可以尝试 使用Eclipse 在 Eclipse 中打开 设备 视图 窗口菜单 gt 显示视图选项 gt 其他 Android gt 设备 右侧有一个工
  • 如果将 ImageResizer 与 Azure blob 一起使用,我是否需要 AzureReader2 插件?

    我正在开发一个个人项目来管理我的俱乐部的用户 它托管在免费的 Azure 包上 至少目前如此 部分作为试用 Azure 的实验 创建他们的记录的一部分是添加照片 因此我有一个联系人卡片视图 可以让我看到他们是谁 他们何时来以及一张照片 我已
  • 我应该尽可能避免使用 JS 而使用 CSS 吗? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在寻找最佳实践答案 目前我正在尝试向我网站的导航栏添加一个下拉菜单 我发现我可以使用 CSS 来做到这一点 而且我也可以使用 JS Angular 来做到这一点 我读到过 因为使用 J
  • 使用 Selenium 将元素滚动到视图中

    Selenium 1 x 或 2 x 中是否有任何方法可以滚动浏览器窗口 以便 XPath 标识的特定元素位于浏览器的视图中 Selenium 中有一个 focus 方法 但在 FireFox 中似乎没有物理滚动视图 有人对如何做到这一点有
  • D3.js 如何将力布局的节点排列在圆上

    我开发了一种力量布局来代表社会群体之间的关系 现在我想让节点分布在一个圆圈中 并有链接连接它们 做这个的最好方式是什么 完整版本的代码 没有数据 在这里http jsfiddle net PatriciaW zZSJT 为什么我也必须在这里
  • UICollectionView 和补充视图崩溃

    我有一个 UICollectionView 工作正常 有 2 种方法可以到达此页面 虽然应用程序 点击推送通知 除了一种情况外 一切都很好 如果用户正在聊天 然后退出应用程序 主页按钮 然后他收到一条推送通知 按下它 应用程序崩溃了 cra
  • Matlab - 如何以函数内的字符串形式检索函数调用的确切参数列表?

    假设我有以下功能 function name the paramlist varargin Print out varargin exactly how it is called as a string 基本上我想要它做的是 调用 name
  • 运行 pyinstaller 时出错(1920,“LoadLibraryEx”,“系统无法访问该文件”)

    我试图将我的 python 脚本编译为 exe 以便我可以将其发送给可以使用而无需安装 python 的朋友 但我遇到了问题并且无法找到解决方案 我发现了类似的问题Pyinstaller win32ctypes pywin32 pywint
  • 单击按钮时将道具传递给另一个组件

    在我的 nextJS 应用程序中 我想将一个组件的 props 传递给另一个组件 该组件既不是第一个组件的父组件 也不是第一个组件的子组件 我该怎么做 有一个Orderdiv 内的组件Orders页面和OrderViewer在另一个 div
  • 用 Monadic 咒语召唤 JQuery Deferred

    灵感来自this 优秀 关于在 javascript 中使用 Promises 的讨论 我正在尝试弄清楚如何使用 Deferred 将异步和非异步函数链接在一起 以避免在使用我的 时支付回调税全局存储 code 我有一些与此相关的问题 但我
  • 我如何知道 AppDelegate 中的方向发生了变化

    设备如何知道方向变化的功能是 void viewWillLayoutSubviews 和 void viewDidLayoutSubviews 但是 它们只是在控制器中 现在我想知道是否有类似的函数可以知道文件 AppDelegate m