我对iphone编程很陌生。我在使用无法解决的标签栏控制器时遇到了问题。我有一个带有 2 个选项卡的应用程序,每个选项卡使用单独的类文件和 nib 文件。我使用摇动手势来告诉应用程序做某事,但是当我从标签二变回标签一时摇动手机,它会执行第二个视图而不是当前视图的动作,当前视图在摇动后保持不变。
我在这里错过了什么吗?我需要释放一些东西吗?
提前感谢您提供的任何帮助。
FirstViewController.m:
#import "FirstViewController.h"
#import <AudioToolbox/AudioToolbox.h>
@implementation FirstViewController
@synthesize label;
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration{
if (fabsf(acceleration.x) > 2.0
|| fabsf(acceleration.y) > 2.0
|| fabsf(acceleration.z) > 2.0) {
label.text = @"Shake";
}
- (void)viewDidLoad {
UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];
accelerometer.delegate = self;
accelerometer.updateInterval = 1.0f/60.0f;
[super viewDidLoad];
}
- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
- (void)viewDidUnload {
}
- (void)dealloc {
[super dealloc];
}
@end
第二视图控制器.m
#import "SecondViewController.h"
#import <AudioToolbox/AudioToolbox.h>
@implementation SecondViewController
@synthesize label2;
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration{
if (fabsf(acceleration.x) > 2.0
|| fabsf(acceleration.y) > 2.0
|| fabsf(acceleration.z) > 2.0) {
label2.text = @"Shake View 2";
}
- (void)viewDidLoad {
UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];
accelerometer.delegate = self;
accelerometer.updateInterval = 1.0f/60.0f;
[super viewDidLoad];
}
- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
- (void)viewDidUnload {
}
- (void)dealloc {
[super dealloc];
}
@end