【问题标题】:What is the proper design pattern for a Universal app that makes use of iPad-only components?使用 iPad 专用组件的通用应用程序的正确设计模式是什么?
【发布时间】:2012-10-16 15:40:30
【问题描述】:

我正在为仅限 iPad 的应用程序添加通用支持。第一个屏幕有一个视图,其中包含一个用于访问应用程序设置的按钮。目前,在仅限 iPad 的版本中,设置出现在 UIPopoverView 中,而 UIPopoverController 是应用程序视图控制器的属性。在 iPhone 版本中,它应该使用模态弹出窗口,但问题是如何分解视图控制器并按现状查看。

@interface ClientSelectionController : UIViewController <UISearchBarDelegate, UIAlertViewDelegate>
{
@private
    UIPopoverController *settingsPopover;
}

-(IBAction)btnSettingsTouchedDown:(id)sender;
@end

我应该为控制器创建两个不同的视图类,并使 UIPopoverController 成为 ClientSelectionView_iPad 版本的子级,还是应该创建两个不同版本的 ClientSelectionController,一个带有 UIPopover,另一个带有模态弹出窗口?

【问题讨论】:

    标签: iphone objective-c ios ipad ios-universal-app


    【解决方案1】:

    您首先要了解您使用的是哪种设备

    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    //iphone
        } else {
    //ipad
        }
    

    然后分别调用 popover/modal

    通常情况下,单个视图控制器会有 2 个 xib 文件。 iphone一个xib一个ipad因为分辨率不同

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-25
      • 2020-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多