0

您好,我是 iphone 编程的新手,我正在尝试创建一个带有游戏元素的新应用程序

我的问题是我很难理解代表......所以为了创建多个视图,这就是我所做的,我创建了一个 switchview 方法,每次按下按钮时都会调用该方法以进入下一个屏幕。

- (void)switchView:(UIView *)View1 toView:(UIView *)View2
{

[UIView beginAnimations:@"" context:nil];
[UIView setAnimationCurve:0.75];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.window cache:YES];
[window addSubview:View2];
[UIView commitAnimations];



}

我的问题是,我希望在指令之后插入一个 viewController 用于视频,然后再插入一个用于查找和更新用户位置的视图控制器。

我是否必须从 AppDelegate.m 插入句柄的每个视图控制器,还是有其他方法?

例如,以下代码通常会进入 MediaPlayerViewController 的 AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
MediaPlayerViewController *vc = [[MediaPlayerViewController alloc] init];
[[self window] setRootViewController:vc];
[vc release];

[self.window makeKeyAndVisible];
return YES;
}

按下例如开始按钮后,我该如何做到这一点,然后会弹出带有视频播放器的下一个屏幕?

我是一个初学者,如果 smbd 可以回答,那将非常有帮助..

谢谢

4

2 回答 2

0

从您的描述和代码片段来看,您似乎已经手动实现了 UINavigationController - 在此过程中为自己创建了很多工作。

Apple 提供 UINavigationContoller 类作为 UIKit 框架的核心部分,用于向用户呈现视图的层次结构。这个层次结构是使用堆栈数据结构实现的,其中堆栈由许多 UIViewController 实例组成。堆栈的使用非常适合导航范例,因为用户在导航层次结构中移动,更多的视图被推送到堆栈上。以联系人应用程序为例,它的 UINavigationController 首先包含一个列出所有联系人的 UIViewController。随后,当用户点击联系人姓名时,他们会看到该联系人的信息。这将转换为包含联系人信息的新 UIViewController 被推送到 UINavigationController 的堆栈中。

了解这一切在实践中如何运作的最简单方法是创建一个新的“基于导航”项目并查看代码。

于 2011-08-07T14:15:11.363 回答
-1

我希望您可能了解内置的视频播放器,您可以利用它来播放可以显示为模态视图的视频:

MPMoviePlayerViewController *m_MoviePlayer =[[MPMoviePlayerViewController alloc] initWithContentURL:pUrl];

[self presentMoviePlayerViewControllerAnimated:m_MoviePlayer];

于 2011-08-07T14:51:21.303 回答