編集:みんな、あなたはとても素晴らしいです、すべての返信に感謝します. stringByAppendingString ルートが最も簡単だと思われるため、行くことにしましたが、それでも何らかの理由で機能しません! これがあまりにも初心者である場合は、もう一度お許しください。すべてのサポートに感謝します!
コードの一部は次のとおりです。
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
[self setupGame];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
int finalorder = 12;
- (IBAction)buttonPressed: (UIButton*) button {
if (button.tag == 1)
{
int order = 1;
}
if (button.tag == 2)
{
[order stringByAppendingString:@"2"];
}
if ([order isEqualToString:finalorder])
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Wrong!"
message:[NSString stringWithFormat:@"Try again!"]
delegate:self
cancelButtonTitle:@"Try"
otherButtonTitles:nil];
[alert show];
};
}
// 元の質問: 私は完全な初心者であり、これは初心者の質問であるため、非常に申し訳ありません。
私は最初の iPhone アプリを作成しています。それをスケール トレーナーにしたいと考えています。画面には 1 オクターブのピアノ (12 個のボタン、各キーに 1 つ) があり、ユーザーが特定のキーの順序を覚えているかどうかを知るために、ユーザーがボタンを押す順序をプログラムで追跡する必要があります。規模。たとえば、スケール C にいる場合、キーは C、D、E、F、G、A、B です。ユーザーが C を押してから D を押すと、さらに機能します。ただし、ユーザーが C を押してから C# を押すと、「間違っています。もう一度やり直してください」という警告が表示されます。
それに加えて、各キーの名前をラベルで表示したい: ユーザーが C キーを押すと、C などがあります。
では、プレスの順序を追跡するにはどうすればよいでしょうか。 これまでのところ、キーの名前を表示し、タイマーを使用する次のコードを作成しました。助けてくれてどうもありがとう!
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
[self setupGame];
// 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)buttonPressed: (UIButton*) button {
if (button.tag == 1)
{
waitinglabel.text = @"C";
}
else
{
[timer invalidate];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Wrong!"
message:[NSString stringWithFormat:@"Try again!"]
delegate:self
cancelButtonTitle:@"Try"
otherButtonTitles:nil];
[alert show];
}
if (button.tag == 2)
{
waitinglabel.text = @"C#";
}
if (button.tag == 3)
{
waitinglabel.text = @"D";
}
if (button.tag == 4)
{
waitinglabel.text = @"D#";
}
if (button.tag == 5)
{
waitinglabel.text = @"E";
}
if (button.tag == 6)
{
waitinglabel.text = @"F";
}
if (button.tag == 7)
{
waitinglabel.text = @"F#";
}
if (button.tag == 8)
{
waitinglabel.text = @"G";
}
if (button.tag == 9)
{
waitinglabel.text = @"G#";
}
if (button.tag == 10)
{
waitinglabel.text = @"A";
}
if (button.tag == 11)
{
waitinglabel.text = @"A#";
}
if (button.tag == 12)
{
waitinglabel.text = @"B";
}
}
- (void)setupGame {
seconds = 30;
count = 0;
timerlabel.text = [NSString stringWithFormat:@"Time: %i", seconds];
timer = [NSTimer scheduledTimerWithTimeInterval:1.0f
target:self
selector:@selector(subtractTime)
userInfo:nil
repeats:YES];
}
- (void)subtractTime {
seconds--;
timerlabel.text = [NSString stringWithFormat:@"Time: %i",seconds];
if (seconds == 0) {
[timer invalidate];
}
}
@end