点击计数&膝部

时间:2012-12-23 01:30:32

标签: objective-c ios math tap

我创建了样本点按计数应用。但我不知道怎么算圈。例如:当命中数为100时,一圈为1.当命中数为200圈为2.我使用下面的代码。谢谢。我是xcode初学者。

以下代码是ViewController.m

#import "ViewController.h"

 @interface ViewController ()

 @end

@implementation ViewController

-(IBAction)plus {
    counter=counter +1;
    count.text = [NSString stringWithFormat:@"%i", counter];
}

-(IBAction)minus {
     counter=counter -1;
    count.text = [NSString stringWithFormat:@"%i", counter];
 }

 -(IBAction)zero {
     counter=0;
     count.text = [NSString stringWithFormat:@"%i", counter];
}
- (void)viewDidLoad
{
    counter=0;
     count.text=@"0";
     [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

 - (void)didReceiveMemoryWarning
 {
     [super didReceiveMemoryWarning];
     // Dispose of any resources that can be recreated.
 }

 @end

以下代码是ViewController.h      #import

 int counter;

 @interface ViewController : UIViewController {
     IBOutlet UILabel *count;
     IBOutlet UILabel *lap;
 }

 -(IBAction)plus;
 -(IBAction)minus;
 -(IBAction)zero;
 @end

1 个答案:

答案 0 :(得分:0)

以下是我如何实现这一目标。现在请注意,我没有使用您的确切设置,但这应该有效,或者至少给您正确的想法。这应该在理论上要困难得多,因为你真的想要检查一圈无限量的100,所以我们需要一些逻辑检查,除非我们使用int。 Int不精确,所以如果我们说50/100,它仍然会返回0.但是,100/100 = 1,200 / 100 = 2,275 / 100仍然等于2.这将很容易实现你想要的。 / p>

这是一个简单的例子,只有一个增加数量的按钮,我使用全局变量进行圈数和点击计数。

在.h

#import <UIKit/UIKit.h>

@interface TapCounterViewController : UIViewController
- (IBAction)buttonTouched:(id)sender;

@end 

在.m

#import "TapCounterViewController.h"

@interface TapCounterViewController ()

@end

@implementation TapCounterViewController

int lapNumber = 0;
int buttonTaps = 0;
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)buttonTouched:(id)sender {
    buttonTaps = buttonTaps + 1;
    NSLog(@"Current Button Taps = %i", buttonTaps);

    //Check for Lap
    [self checkForLap];
}


-(void)checkForLap {
    //We must divide by 100 to check for the number if laps.
    int laps = buttonTaps/100;
    NSLog(@"Number of laps = %i", laps);
    lapNumber = laps;
}
@end

这可以很容易地适应递减,重置你什么。只要您对按钮点击进行更改,就执行checkForLap。

祝你好运,如果您需要更多信息,请告诉我!

编辑

关于振动:

有两个看似相似的函数采用参数kSystemSoundID_Vibrate:

1)AudioServicesPlayAlertSound(kSystemSoundID_Vibrate); 2)AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

这两个功能都会激活iPhone。但是当您在不支持振动的设备上使用第一个功能时,它会发出哔声。另一方面,第二个功能对不支持的设备没有任何作用。因此,如果您要持续振动设备,作为警报,常识说,请使用功能2。

另请参阅“iPhone教程:检查iOS设备功能的更好方法”一文。

要导入的头文件:

#import <AudioToolbox/AudioServices.h>