iPhone/iPad 方向处理

2024-03-06

这更像是一个一般性问题,供人们为我提供指导,基本上我正在学习 iPad/iPhone 开发,并最终遇到了多方向支持问题。

我查阅了大量的 doco,我的书《Beginning iPhone 3 Development》中有一个很好的章节。

但我的问题是,如果我要以编程方式更改我的控件(或者甚至为每个方向使用不同的视图),人们到底如何维护他们的代码库?我可以想象意大利面条代码有这么多问题/到处都是数千个“if”检查,如果对 UI 安排做出一点小小的改变,我就会发疯。

有人有处理这个问题的经验吗?有什么好的方法可以控制它吗?

多谢 标记


我在视图控制器中使用两个简单的方法来执行此操作:

- (void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
    [self adjustViewsForOrientation:toInterfaceOrientation];
}

- (void) adjustViewsForOrientation:(UIInterfaceOrientation)orientation {
    if (orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight) {
        titleImageView.center = CGPointMake(235.0f, 42.0f);
        subtitleImageView.center = CGPointMake(355.0f, 70.0f);
        ...
    }
    else if (orientation == UIInterfaceOrientationPortrait || orientation == UIInterfaceOrientationPortraitUpsideDown) {
        titleImageView.center = CGPointMake(160.0f, 52.0f);
        subtitleImageView.center = CGPointMake(275.0f, 80.0f);
        ...
    }
}

为了保持干净,您可以轻松地划分视图调整/重新加载等。从单个内部调用的方法if-else有条件的。

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

iPhone/iPad 方向处理 的相关文章

  • 以编程方式单击 tabbarController 的选项卡

    我有 2 个带有 Nib 文件的选项卡按钮 在按下选项卡 1 上的按钮时 我希望它显示选项卡 2 的视图 而不是单击选项卡栏按钮 2 我的意思是 我想以编程方式单击第二个选项卡栏按钮 我怎样才能做到这一点 可能吗 您必须创建一个包含以下内容
  • 自定义相机视图 Swift iOS 8 iPhone Xcode 6.1

    我想在 iPhone 的 View 中使用相机 我不想使用典型的全屏相机视图 而是我自己的 例如 我想在屏幕中间有一个 200x200 的正方形 并且有一个相机预览 在这个方块下面我想要一个拍照按钮 怎么做 我是新手 速度很快 你会想要使用
  • CoreBluetooth广告检测时间

    这个问题早在10月份就已经讨论过here https stackoverflow com questions 12866551 corebluetooth connection setup time varies quite a bit 1
  • 显示仅允许数字和小数点的输入?

    有什么方法可以定义一个
  • 如何在松开按钮后立即看到新的视频层?

    我有一个应用程序 用户可以按住按钮来拍摄视频 然而 当他们这样做时 带有视频播放的新图层不会立即出现 相反 有一个非常短的延迟 在用户松开按钮后 您可以看到相机仍然显示相机所看到的内容 延迟结束后 视频立即显示并开始播放 但是 我怎样才能使
  • iPhone OS:从匿名对象获取方法和变量列表

    我正在构建我的第一个 iPhone Obj c 应用程序 并且我有大量的数据保存子类 我将它们传递给引用函数 对于 cite 函数 这些对象是匿名的 我需要找到一种方法来访问每个传递对象的所有变量 我一直在使用预构建的 NSArray 和选
  • iOS 4.0 contentScaleFactor 和比例 - 在 3.1.3 中如何处理?

    我的任务是制作一个在 iOS 4 0 中运行的应用程序再次在 3 1 3 和 3 2 中运行 大多数情况下 它很简单 但处理新 API 的扩展和其他必须传递 返回值的情况很困难 respondsToSelector performSelec
  • Cocos2D复杂动画[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 Cocos2D 将我的游戏从 Flash 移植到 iOS 我现在有一个工作版本 我很高兴我
  • 使用 AVMutableVideoCompositionLayerInstruction 旋转视频

    我正在 iPhone 4 上使用前置摄像头拍摄视频 并将视频与其他一些媒体资源结合起来 我希望该视频为纵向 所有视频的默认方向都是横向 在某些情况下 您必须手动管理 我正在使用 AVFoundation 特别是 AVAssetExportS
  • 如何使用 iOS 可达性

    我正在开发一个使用网络的 iPhone 应用程序 iPhone 通过 HTTP 请求与我的服务器通信 并且应该可以在 WiFi 和 3G 上运行 我目前使用NSURLConnection initWithRequest向我的服务器发送异步请
  • NSString stringWithContentsOfFile 失败,错误代码似乎错误

    我正在尝试将文件加载到字符串中 这是我正在使用的代码 NSError error nil NSString fullPath NSBundle mainBundle pathForResource filename ofType html
  • 如何开始复杂级别的跨平台移动应用开发? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何以编程方式更改 iPhone APN(接入点名称)?

    如何以编程方式更改 iPhone APN 接入点名称 或者强制 3G GPRS 连接以编程方式使用特定的 APN 无法通过 SDK 完成 第三方应用程序无法对硬件进行这种级别的控制 尤其是蜂窝调制解调器
  • iOS:生成pdf时绘制文本时如何设置字体?

    我在ios应用程序中使用drawpdf函数生成pdf 同时调用nsobject类中的drawtext函数 它根据我指定的框架和字符串清楚地绘制文本 我的代码是 void drawText NSString textToDraw inFram
  • iPhone - UIImage imageWithData 返回 nil

    我需要从字节数组创建 UIImage 现在我创建了字节数组 image CGImageCreateWithImageInRect aux CGImage imageRect context CGBitmapContextCreate dat
  • 直接在 XCode 中编译 Arm Assembly

    将arm汇编代码编译成xcode的最佳方法是什么 我有生成的那些程序集文件 有没有办法可以将 s 文件直接包含到我拥有的 C 代码中 或者我需要先运行一个预处理器 它将生成 o 文件 我可以将其与我的文件链接 如果是这样的话 在 XCode
  • 如何向标准 UIButton 添加徽章? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 是否可以在标准中添加看起来标准的徽章UIButton 如果不支持半原生 那么实现此目的最简单的方法是什么 示例图片 这是 Sascha
  • iPhone:UIApplication WillResignActiveNotification 从未被调用

    我正在视图控制器中播放视频 当用户按下硬件主页按钮并且当前正在播放视频时 应用程序崩溃并显示EXC BAD ACCESS在模拟器中 我读到我应该使用applicationWillResignActive停止视频播放的消息应该可以解决崩溃问题
  • 如果我使用自定义 UITableViewCell,是否需要设置 heightForRowAtIndexPath?

    如果我使用自定义 UITableViewCell 是否需要设置 heightForRowAtIndexPath 在我的 NIB 中 我已经设置了单元高度 当我覆盖 heightForRowAtIndexPath 时 单元格的内容不会出现 即
  • 隐藏选项卡栏项目并对齐其他选项卡项目

    在我的应用程序中 我有 4 个选项卡栏项目 我正在 XIB 文件中添加这 4 个选项卡栏项目 最初我必须显示 3 个选项卡栏项目 同步后我必须在我的应用程序中显示第 4 个选项卡栏项目 因此 为此 我使用以下代码隐藏第四个选项卡栏项目 se

随机推荐

  • 无反向匹配 /

    我正在尝试制作非常有意义的网址 但我想我做错了 这有效 from django conf urls defaults import patterns url from places views import explore view url
  • 如何仅在本地标头上运行预处理器?

    我希望预处理器读取本地标头的包含内容 但忽略系统标头的包含内容 换句话说 如何让预处理器跳过以下形式的预处理指令 include
  • 如何通过 Fluent NHibernate 添加事件监听器?

    我想添加一个事件监听器 IPreUpdateEventListener 添加 NHibernate 但我似乎找不到使用流畅配置的示例 我希望能够在创建会话工厂时添加监听器 例如当执行以下代码时 sessionFactory Fluently
  • phpMyAdmin 提供了export.php 而不是数据库sql 转储

    环境 Windows 10 Enterprise x64 上的 Wamp 服务器 2 5 x64 MySQL 5 6 17 phpmyadmin4 1 14 全新安装 自昨天完全安装以来没有重大变化 完全控制访问C wamp tmp Win
  • VS Code 中的 Prettier - 在双引号内设置双引号的格式

    我在 VS Code 中使用 Prettier 扩展 我想在代码中使用双引号 jsxSingleQuote 和 singleQuote 设置为 false 当我在这行代码上运行 format 时 var hello hello Pretti
  • 更改 AppSetting 不会对应用程序产生影响

    在我正在 ASP Net 上开发的应用程序之一中 在此应用程序中 我们使用了大量的 AppSettings 在最初的开发中我们使用了ConfigurationManager AppSettings 但随着开发的进展 我们创建了一个实用程序类
  • 正向地理编码后如何返回坐标?

    我试图查看用户是否在某个地址的一定距离内 我已成功获取用户位置 并使用正向地理编码转换地址 我留下了两组坐标 我试图做出一个 if 语句 表示如果它们在 一定距离 内 则打印一些内容 目前 当我打印地标函数内的坐标时 我得到了所需的坐标 当
  • 是否有一个类来保存文件系统路径?

    在 NET 基类库中 有一个 System IO Path 类 用于对表示文件系统路径的字符串执行常见操作 然而 我需要的是封装路径的类相反 我得到了类型安全和可能更短的路径操作表示法 我正在考虑 NET 等价的C Boost 的 http
  • Android 蓝牙跨平台互操作性

    我有一个在 Windows 机器上为 Net 编程的蓝牙服务 我希望我的 Android 2 1 手机能够连接到它 服务器正在侦听 Android 用于连接的相同 UUID 但连接失败 当我尝试连接到未侦听该 UUID 的设备时 出现异常并
  • 无法两次更改复选框视图的背景颜色 - Android

    我尝试改变CheckBox用户将其状态更改为后的背景Checked 下面的代码不能很好地工作 如果我单击未选中的复选框 它将状态和颜色更改为蓝色 当我再次单击它并取消选中时 颜色保持蓝色而不是更改为红色 我做了介绍电话无效 没有成功 我确认
  • 如果 gulp 安装在与 gulpfile.js 不同的文件夹中(node_modules),如何运行 gulp

    我在一个目录中有 gulpfile js 在另一个目录中有 node modules 当我运行 gulp 时 出现错误 在 目录 中找不到本地gulp 尝试运行 npm install gulp 问题是 我无法在 gulpfile js 目
  • Java 中“私有静态最终”和“公共静态最终”类变量的最接近的 Ruby 表示形式?

    给定下面的 Java 代码 您可以最接近地表示这两个static finalRuby 类中的变量 并且 在 Ruby 中是否可以区分private static and public staticJava 中的变量 public class
  • Python GDAL 未安装在 Mac OSX El Capitan 上

    我在 Mac OSX El Captain 中安装 pygdal 时遇到几个问题 程序如下 安装 GDAL 库http www kyngchaos com software frameworks gdal complete http www
  • 使用给定的步数获取给定最小值和最大值的可枚举范围

    我熟悉可枚举范围 http msdn microsoft com en us library system linq enumerable range 28v vs 100 29 aspx生成值枚举的方法 但我想要一些稍微不同的东西 我想提
  • ^ 有什么作用? [复制]

    这个问题在这里已经有答案了 我是 C 编程新手 正在查看我不久前发现的一些示例 由于我是一名不错的 Java 程序员 因此我取得了良好的进步 至少从我的角度来看 D 现在我遇到了一些我无法弄清楚它的作用的事情 Threading Threa
  • 寻找锁定的脚本解释器[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个执行特定任务的 NET 库 假设我的应用程序已发送一个程序 以某种脚本语言 并且我希望我
  • asp.net core 2.0 中的 WCF - 无法为具有权限的 SSL/TLS 安全通道建立信任关系

    以前我有一个面向框架 4 5 1 的应用程序 并使用 Web Reference 添加 WCF 服务 这完美地工作并且能够成功地通过服务器进行身份验证 旧代码 ServicePointManager Expect100Continue fa
  • Retrofit2 proguard 删除参数

    我在我的项目中使用了 Retrofit 2 并使用了 proguard 我的proguard dontwarn retrofit2 keep class retrofit2 keepattributes Signature keepattr
  • 相对图像路径在 FireFox 中不显示图像

    我正在尝试使用 Iframe 打开 html 页面 Html 页面有一些文本和图像 图像源使用相对路径指定 例如 图像 Img1 jpg 它在 IE 和 Chrome 中运行良好 在 Firefox 中 图像路径变得像 http local
  • iPhone/iPad 方向处理

    这更像是一个一般性问题 供人们为我提供指导 基本上我正在学习 iPad iPhone 开发 并最终遇到了多方向支持问题 我查阅了大量的 doco 我的书 Beginning iPhone 3 Development 中有一个很好的章节 但我