好的,这将是一个愚蠢的问题,但无论如何,我无处可以问它,除了这里。Objective-C,iPhone SDK基础知识
我有两个按钮,并且必须有一个切换大小写语句执行它们中的任何一个。 当然,我可以把这个语句放在每个IBAction代码块中,但是这个代码看起来非常糟糕。
我试图把开关等情况到一个单独的方法,这就是我:
.h文件中
#import <UIKit/UIKit.h>
@interface AppViewController : UIViewController
{
IBOutlet UILabel *someTextLabel;
NSNumber *current;
}
@property (nonatomic, retain) IBOutlet UILabel *someTextLabel;
@property (nonatomic, retain) NSNumber *current;
- (void) switchMethod;
- (IBAction) pressButtonForward;
- (IBAction) pressButtonBack;
@end
.m文件
#import "AppViewController.h"
@implementation AppViewController
@synthesize someTextLabel;
@synthesize current;
current = 0;
- (void) switchMethod:current
{
switch((int)current) {
case 0:
//do something
break;
case 1 :
//do something
break;
//etc
default:
//do something
break;
}
}
- (IBAction) pressButtonBack
{
if((int)current == 0) {
current = 6;
}
else {
current--;
}
//here must be a switchMethod performed
}
- (IBAction) pressButtonForward
{
if((int)current == 6) {
current = 0;
}
else {
current++;
}
//here must be a switchMethod performed
}
//auto-generated code here
@end
当然这个代码是不正确的,但这就像我想要得到的蓝图。
问题:
- 什么是使用这种开关case语句作为一个单独的方法,这样我可以从IBAction为方法调用它的正确方法是什么?
- 我该如何为此代码投入数据类型才能工作,还是最好在整个地方使用整数类型(对于“当前”变量)?
请编辑您的问题,包括实际问题。 – 2010-07-30 10:58:48
你的问题是什么? – taskinoor 2010-07-30 11:04:16