2

iOSプログラミングの目的-cを学んでいます。2 つの丸い四角形のボタンとラベルを持つアプリを作成しています。ボタンのコンテンツの値を比較し、ボタンが一致するかどうかに基づいてラベルにテキストを出力したいと考えています。ただし、ボタンの内容を比較する方法を理解できませんでした。以下に投稿するモデルファイルとView Controllerがあります。

あなたが提供できる助けをありがとう

これはmodel.hファイルです

//  MatchTest.h
#import <Foundation/Foundation.h>

@interface MatchTest : NSObject

-(NSString*)doesItMatch:(UIButton *)sender;
-(NSString*)doesItMatchGroup:(NSArray *)buttonGroup;

@end

これはmodel.mファイルです

//  MatchTest.m
#import "MatchTest.h"

@implementation MatchTest

-(NSString*)doesItMatch:(UIButton *)sender
{
    NSString* tempString;

    if(sender.isSelected)
    {
        tempString = @"selected";
    }
    else
    {
        tempString = @"not selected";
    }

    return tempString;
}

-(NSString*)doesItMatchGroup:(NSArray *)buttonGroup
{
    NSString* tempString = @"Buttons: Match";;

    for(int i=1;i<buttonGroup.count;i++)
    {
        if(buttonGroup[i-1] != buttonGroup[i])
        {
            tempString = @"Buttons: Do Not Match";
            NSLog(@"%@",buttonGroup[i]);
        }

    }

    return tempString;
}
@end

これはViewController.hファイルです

//  MatchViewController.h
#import <UIKit/UIKit.h>
#import "MatchTest.h"
@interface MatchViewController : UIViewController
@end

これはViewController.mファイルです

//  MatchViewController.m
#import "MatchViewController.h"

@interface MatchViewController ()

@property (weak, nonatomic) IBOutlet UILabel *matchLabel;
@property (strong, nonatomic) MatchTest *match;
@property (strong, nonatomic) IBOutletCollection(UIButton) NSArray *buttonGroup;

@end

@implementation MatchViewController

-(MatchTest *)match
{
    if(!_match) _match = [[MatchTest alloc] init];
    return _match;
}

-(NSArray *)buttonGroup
{
    if(!_buttonGroup) _buttonGroup = [[NSArray alloc] init];
    return _buttonGroup;
}

- (IBAction)button:(UIButton *)sender
{
    sender.selected = !sender.isSelected;
    self.matchLabel.text = [self.match doesItMatchGroup:self.buttonGroup];
}

@end
4

2 に答える 2