Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 这是更改UIViewController的好方法吗?_Iphone_Objective C_User Interface - Fatal编程技术网

Iphone 这是更改UIViewController的好方法吗?

Iphone 这是更改UIViewController的好方法吗?,iphone,objective-c,user-interface,Iphone,Objective C,User Interface,我是iPhone应用程序开发新手。我现在想写的应用程序非常简单 我想有“屏幕”。为此,我为这两个类创建了toUIViewController子类。第一个有一个按钮,当它被按下时,我想把屏幕换成第二个。为此,我想向sharedAppDelegate对象发送一条消息,并更改窗口中的视图 也许这很重要: 第一个屏幕用于输入我要连接的服务器的ip地址。因此,此屏幕在应用程序中仅显示一次 我走对了吗?您正在寻找的API都可以在UIViewcontroller中找到: - [UIViewController

我是iPhone应用程序开发新手。我现在想写的应用程序非常简单

我想有“屏幕”。为此,我为这两个类创建了to
UIViewController
子类。第一个有一个按钮,当它被按下时,我想把屏幕换成第二个。为此,我想向shared
AppDelegate
对象发送一条消息,并更改窗口中的视图

也许这很重要: 第一个屏幕用于输入我要连接的服务器的ip地址。因此,此屏幕在应用程序中仅显示一次


我走对了吗?

您正在寻找的API都可以在UIViewcontroller中找到:

- [UIViewController presentModalViewController:animated:];


您要查找的API都可以在UIViewcontroller中找到:

- [UIViewController presentModalViewController:animated:];


如果将ViewController推送并弹出到导航,效果会更好。
代码示例:

-(IBAction) CallNumberClicked  
 {  
    static DialNumberViewController *viewController=nil;  
    if(viewController==nil)  
        viewController=[[DialNumberViewController alloc] initWithNibName:@"DialNumberViewController" bundle:nil];  
    [self.navigationController pushViewController:viewController animated:YES];  
  }

如果将ViewController推送并弹出到导航,效果会更好。
代码示例:

-(IBAction) CallNumberClicked  
 {  
    static DialNumberViewController *viewController=nil;  
    if(viewController==nil)  
        viewController=[[DialNumberViewController alloc] initWithNibName:@"DialNumberViewController" bundle:nil];  
    [self.navigationController pushViewController:viewController animated:YES];  
  }

与其他人已经添加的内容保持一致。你应该看看(如果你还没有)苹果的''。它将为管理视图提供一些很好的见解,并提供不同方法(推送、模式等)的示例

编辑


因为听起来您希望一次显示一个视图(没有堆栈,没有模式),所以您应该真正查看一个视图来帮助组织视图控制器。这将允许您轻松地从一个切换到另一个。有关如何设置的详细信息,您需要向下滚动到“选项卡栏”部分。希望有帮助

继续其他人已经添加的内容。你应该看看(如果你还没有)苹果的''。它将为管理视图提供一些很好的见解,并提供不同方法(推送、模式等)的示例

编辑


因为听起来您希望一次显示一个视图(没有堆栈,没有模式),所以您应该真正查看一个视图来帮助组织视图控制器。这将允许您轻松地从一个切换到另一个。有关如何设置的详细信息,您需要向下滚动到“选项卡栏”部分。希望有帮助

我这样做的方式是使用协议和回调。当前的ViewController调用原始的ViewController,原始的ViewController释放“当前”的ViewController。

我这样做的方式是使用协议和回调。当前ViewController调回原始视图控制器,原始视图控制器释放“当前”视图控制器。

您是否为应用程序使用任何导航控制器(例如:UINavigationController、UITabBarController)?否。目前不使用。我想先了解一下基本知识,你是否在为你的应用程序使用导航控制器(例如:UINavigationController、uitabarcontroller)?不,目前还没有。我想先了解基本知识我不确定我是否需要模式视图,因为第一个屏幕应该只显示一次。在这种情况下,我建议您从第二个视图控制器开始,并将第一个显示在顶部作为模式。我不确定我要要模式视图,因为第一个屏幕应该只显示一次。在这种情况下,我建议您从第二个视图控制器开始,将第一个视图控制器显示为模态。我已经读过了。但我不明白是否可以用另一个替换当前的视图控制器。如果我可以-怎么做?你认为VIEW控制器需要输入的IP地址是一个“应用程序设置”部分,另一个是实际应用?但我仍然想知道是否可以用另一个viewController替换一个viewController?我想(希望)我理解你的要求!这是可能的,请看我上面的编辑。我已经读过了。但我不明白是否可以用另一个替换当前的视图控制器。如果我可以-怎么做?你认为VIEW控制器需要输入的IP地址是一个“应用程序设置”部分,另一个是实际应用?但我仍然想知道是否可以用另一个viewController替换一个viewController?我想(希望)我理解你的要求!这是可能的,见我的编辑上面。