0

サンプルタップカウントアプリを作成しました。しかし、ラップの数え方がわかりません。例: ヒット カウント 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
4

1 に答える 1

0

これが私がこれを達成した方法です。ここで、私はあなたの正確な設定を使用していませんが、これでうまくいくか、少なくとも正しい考えが得られるはずです. これは、無限の 100 のラップを実際にチェックしたいので、理論的にはもっと難しいはずです。Int は正確ではないため、50/100 を指定しても 0 が返されます。ただし、100/100 = 1、200/100 = 2、275/100 は 2 に等しくなります。これにより、目的が簡単に達成されます。

これは、量を増やすボタンのみを使用した簡単な例です。ラップ カウントとタップ カウントにはグローバル変数を使用します。

.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 を取る、一見似たような関数が 2 つあります。

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

どちらの機能もiPhoneを振動させます。ただし、振動をサポートしていないデバイスで最初の機能を使用すると、ビープ音が鳴ります。一方、2 番目の関数は、サポートされていないデバイスでは何もしません。したがって、デバイスを継続的に振動させる場合は、アラートとして常識的に機能 2 を使用してください。

「iPhone チュートリアル: iOS デバイスの機能を確認するためのより良い方法」の記事も参照してください。

インポートするヘッダー ファイル:

#import <AudioToolbox/AudioServices.h>
于 2012-12-23T02:48:08.317 に答える