Xcode6 下实现界面切换

100 篇文章 1 订阅
20 篇文章 0 订阅

Xcode6 下实现界面切换

1.新建一个工程T  Xcode ——> File——>New--->Project--->Single View Application



 2. 添加一个三个Cocoa Touch Class 基类为UIViewController类,SwitchViewController、FirstViewController、SecondViewController。


3.在storyBoard中创建两个View Controller,分别设置Storyboard ID为first 和 second,Class为FIrstViewController 和 SecondViewController。并在界面上各放一个label和button


4.对类进行修改

  1.在AppDelegate.h文件中,添加

@class SwitchViewController;


@property (nonatomic,retain)IBOutlet SwitchViewController* switchViewCOntroller;

+(AppDelegate*) app;

2.在AppDelegate.m文件中添加,

#import "SwitchViewController.h"

修改didFinishLaunchingWithOptions函数

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

// Override point for customization after application launch.

self.switchViewCOntroller=[[SwitchViewControlleralloc]init];

[self.switchViewCOntrollerinitView];

self.window.rootViewController=self.switchViewCOntroller;

self.window.backgroundColor=[UIColorwhiteColor];

[self.windowmakeKeyAndVisible];

returnYES;

}

添加

+(AppDelegate*) app{

 

  return (AppDelegate *) [[UIApplicationsharedApplication] delegate];


}

3.修改SwitchViewCOntroller类

 1.头文件修改成

#import <UIKit/UIKit.h>

@class FirstViewController;

@class SecondViewController;

@interface SwitchViewController :UIViewController{

FirstViewController*  firstViewController;

SecondViewController* secondViewController;

}

@property(nonatomic ,retain)FirstViewController*  firstViewController;

@property(nonatomic ,retain)SecondViewController* secondViewController;

-(void) initView;

-(void) showFirstView;

-(void) showSecondView;

-(void) removeAllView;


@end

 2.m文件中完成添加的方法。

#import "FirstViewController.h"

#import "SecondViewController.h"


-(void) initView{

if (self.firstViewController ==nil) {

UIStoryboard *futureStoryBoard = [UIStoryboardstoryboardWithName:@"Main"bundle:nil];

self.firstViewController = [futureStoryBoardinstantiateViewControllerWithIdentifier:@"first"];


}

[selfremoveAllView];

[self.viewinsertSubview:self.firstViewController.viewatIndex:0];

}

-(void) showFirstView{

if (self.firstViewController ==nil) {

UIStoryboard *futureStoryBoard = [UIStoryboardstoryboardWithName:@"Main"bundle:nil];

self.firstViewController = [futureStoryBoardinstantiateViewControllerWithIdentifier:@"first"];


}

[selfremoveAllView];

[self.viewinsertSubview:self.firstViewController.viewatIndex:0];

}

-(void) showSecondView{

if (self.secondViewController ==nil) {

UIStoryboard *futureStoryBoard = [UIStoryboardstoryboardWithName:@"Main"bundle:nil];

self.secondViewController = [futureStoryBoardinstantiateViewControllerWithIdentifier:@"second"];

}

[selfremoveAllView];

[self.viewinsertSubview:self.secondViewController.viewatIndex:0];

}


-(void) removeAllView{

int t=[self.view.subviewscount];

NSLog(@"%d",t);

for (int i=0;i<[self.view.subviewscount];i++) {

[[self.view.subviewsobjectAtIndex:i] removeFromSuperview];

}

}

5.为两个界面上的按钮分别添加消息响应函数

firstViewController添加

- (IBAction)buttonClick:(id)sender {

[[AppDelegateapp].switchViewCOntroller showSecondView];

}

secondViewController添加

- (IBAction)buttonClick:(id)sender {

[[AppDelegateapp].switchViewCOntroller showFirstView];

}


为了大家写代码时能有完整参考,特传上了源码

http://download.csdn.net/detail/liuyinghui523/8491405



  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在macOS上使用Xcode编写C++图形界面,您可以使用C++的图形库Qt。以下是一些简单的步骤: 1. 安装Xcode和Qt:您可以从Xcode官网和Qt官网下载和安装它们。 2. 在Xcode中创建一个新的C++项目:选择File->New->Project,然后选择macOS->Command Line Tool。 3. 配置Qt:在Xcode中选择Project->Edit Active Scheme,然后在左侧选项卡中选择Run。在Arguments Passed On Launch下面添加以下参数: ``` -L/path/to/Qt/lib -I/path/to/Qt/include -lQtGui -lQtCore ``` 其中/path/to/Qt/lib是Qt库的位置,/path/to/Qt/include是Qt头文件的位置。您需要根据实际情况修改这些路径。 4. 编写代码:在Xcode中创建一个新的C++源文件,并使用Qt的API编写代码。 5. 编译和运行:保存代码后,使用Xcode中的Build和Run按钮编译和运行程序。 这是一个简单的示例代码,演示如何在macOS上使用Qt编写一个简单的图形界面程序: ``` #include <QApplication> #include <QWidget> #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget window; window.resize(250, 150); window.setWindowTitle("Hello World"); QPushButton helloButton("Hello World!", &window); helloButton.setGeometry(10, 10, 100, 30); window.show(); return app.exec(); } ``` 在这个示例中,我们使用Qt的QApplication类创建一个应用程序对象,使用QWidget类创建一个窗口对象,并在窗口中添加一个QPushButton按钮。最后,我们显示窗口并运行应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值