新建empty application,在appdelegate里添加导航。
第一张页面 oneViewCon:
- (void)viewDidLoad
{
[superviewDidLoad];
self.navigationController.navigationBarHidden = YES; //隐藏导航条
UIImageView *titleImage = [[UIImageView alloc]initWithFrame:CGRectMake(0,20,320,60)]; //创建图片对象初始化并确定位置
titleImage.image = [UIImageimageNamed:@"titleView"];
[self.viewaddSubview:titleImage];
UIImageView * qingImage= [[UIImageViewalloc]initWithFrame:CGRectMake(95,20,130,40)];
qingImage.image = [UIImageimageNamed:@"qingyin"];
[self.viewaddSubview:qingImage];
UIImageView *bgImage = [[UIImageViewalloc] initWithFrame:CGRectMake(0,60,320,420) ];
bgImage.image = [UIImageimageNamed:@"bg_01"];
[self.viewaddSubview:bgImage];
UIImageView *bgImage2 = [[UIImageViewalloc]initWithFrame:CGRectMake(0,60,320,420)];
bgImage2.image = [UIImageimageNamed:@"bg_01_01"];
[self.viewaddSubview:bgImage2];
UIButton *btn = [UIButtonbuttonWithType:UIButtonTypeSystem]; //创建按钮,系统给定的类型
btn.frame =CGRectMake(70,100,40,40);
[btn addTarget:selfaction:@selector(didClicked:)forControlEvents:UIControlEventTouchUpInside]; //添加按钮动作和动作方法
[self.viewaddSubview:btn];
}
- (void)didClicked:(UIButton *)sedner //按钮的方法
{
twoViewCon *oneViewCon = [[twoViewCon alloc] init];
[self.navigationControllerpushViewController:oneViewConanimated:YES];
} //将oneviewcon与twoviewcon连接起来,push。
第二页 twoViewCon:
- (void)createBgView //背景方法
{
UIImageView *bgImageView = [[UIImageViewalloc]initWithFrame:CGRectMake(0,44,320,418)];
bgImageView.image = [UIImageimageNamed:@"kanaDetailBgImg"];
[self.viewaddSubview:bgImageView];
UIImageView *titleImageView = [[UIImageViewalloc]initWithFrame:CGRectMake(0,0,320,49)];
titleImageView.image = [UIImageimageNamed:@"titleView"];
[self.viewaddSubview:titleImageView];
UIImageView *footerImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0,self.view.frame.size.height -49, 320, 49)];
footerImageView.image = [UIImageimageNamed:@"bottomBg"];
[self.viewaddSubview:footerImageView];
UIImageView *strokerImageView = [[UIImageViewalloc]initWithFrame:CGRectMake(50,70,225,225)];
strokerImageView.image = [UIImageimageNamed:@"1"];
[self.viewaddSubview:strokerImageView];
}
- (void)createButtons //按钮方法
{
UIButton *backBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];
UIButton *clearBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];
[backBtn setImage:[UIImageimageNamed:@"backBtn"]forState:UIControlStateNormal]; //设置返回按钮图片,状态设为正常
backBtn.frame =CGRectMake(10,6,70,35); [backBtn addTarget:self action:@selector(didBackClicked:)forControlEvents:UIControlEventTouchUpInside];
[self.viewaddSubview:backBtn];
[clearBtn setImage:[UIImageimageNamed:@"clearBtn"]forState:UIControlStateNormal];
clearBtn.frame =CGRectMake(self.view.frame.size.width -80, 6, 70, 35);
[clearBtn addTarget:selfaction:@selector(didClearClicked:)forControlEvents:UIControlEventTouchUpInside];
[self.viewaddSubview:clearBtn];
UIButton *voiceBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];
voiceBtn.frame =CGRectMake(10,self.view.frame.size.height -52, 67, 52);
//声音按钮的两种状态
[voiceBtn setImage:[UIImageimageNamed:@"pronounceBtn_01"]forState:UIControlStateNormal];
[voiceBtn setImage:[UIImageimageNamed:@"pronounceBtn_02"]forState:UIControlStateHighlighted];
voiceBtn addTarget:selfaction:@selector(didPlayClicked:)forControlEvents:UIControlEventTouchUpInside];
[self.viewaddSubview:voiceBtn];
UIButton *strokeBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];
strokeBtn.frame =CGRectMake(126,self.view.frame.size.height -52, 67, 52);
[strokeBtn setImage:[UIImageimageNamed:@"strokeOrderBtn_01"]forState:UIControlStateNormal];
[strokeBtn setImage:[UIImageimageNamed:@"strokeOrderBtn_02"]forState:UIControlStateHighlighted];
[strokeBtn addTarget:selfaction:@selector(didStrClicked:)forControlEvents:UIControlEventTouchUpInside];
[self.viewaddSubview:strokeBtn];
UIButton *practiceBtn = [UIButtonbuttonWithType:UIButtonTypeCustom];
practiceBtn.frame =CGRectMake(244,self.view.frame.size.height -52, 67, 52);
[practiceBtn setImage:[UIImageimageNamed:@"practiceBtn_01"]forState:UIControlStateNormal];
[practiceBtn setImage: [UIImageimageNamed:@"practiceBtn_02"]forState:UIControlStateHighlighted];
[practiceBtn addTarget:selfaction:@selector(didPraClicked:)forControlEvents:UIControlEventTouchUpInside];
[self.viewaddSubview:practiceBtn];
}
- (void)createAnimation //动画方法
{
aniImageView = [[UIImageView alloc] initWithFrame:CGRectMake(50,70,225,225)];
//创建一个可变数组的对象并初始化,NSMutableArray:可变数组
NSMutableArray *array = [[NSMutableArray alloc] init];
for (int i =5; i <=17; i++) {
NSString *name = [NSStringstringWithFormat:@"a%04d",i]; //format:格式;创建有多个图像组成的对象,将图片用字符串格式返回
NSLog(@"%@", name);
UIImage *image = [UIImageimageNamed:name];
[array addObject:image]; //。。。
} //循环图片
aniImageView.animationImages = array; //数组为动画图片
aniImageView.animationDuration =4; //动画时间
aniImageView.animationRepeatCount =1; //动画次数
[self.viewaddSubview:aniImageView];
}
- (void)didBackClicked:(UIButton *)sender
{
[self.navigationControllerpopViewControllerAnimated:YES]; //返回上一个页面,pop
}
- (void)didClearClicked:(UIButton *)seder
{
NSLog(@"%s",__PRETTY_FUNCTION__);
}
- (void)didPlayClicked:(UIButton *)sender
{
NSLog(@"%s",__PRETTY_FUNCTION__);
AudioServicesPlaySystemSound(soundID); //播放声音
}
- (void)didStrClicked:(UIButton *)sender
{
[aniImageView startAnimating]; //开始执行动画
}
- (void)didPraClicked:(UIButton *)sender
{
NSLog(@"%s",__PRETTY_FUNCTION__);
}
- (void)viewDidLoad
{
[self createBgView]; //调用方法
[self createButtons];
[self createAnimation];
NSURL *url = [[NSBundle mainBundle] URLForResource:@"290_bya"withExtension:@"mp3"]; //创建一个url获取声音地址
AudioServicesCreateSystemSoundID((__bridge CFURLRef)(url), &soundID);
} //音频服务器创建系统声音ID,连接url,将url存入地址soundID (翻译)