0

Xcode で iPhone アプリケーションを使用しており、4 つの異なる選択肢を持つセグメント化されたコントロールを使用したいと考えています。

何が間違っているのか、クリックしても NSLog メッセージが表示されないのはなぜですか?

これは私のコードです:

.h ファイル:

#import <Foundation/Foundation.h>

@interface Format : UIViewController{

    IBOutlet UISegmentedControl *papper;
}

@property (nonatomic, retain) IBOutlet UISegmentedControl *papper;

-(IBAction)papperskontrollSwitched:(id)sender;

.m ファイル:

#import "Format.h"

@implementation Format

@synthesize papper;

-(IBAction)papperskontrollSwitched:(id)sender{
    if(papper.selectedSegmentIndex==0){

        NSLog(@"A5 valdes");
    } 

    else if(papper.selectedSegmentIndex==1){

        NSLog(@"A4 valdes");
    }

    else if(papper.selectedSegmentIndex==2){

        NSLog(@"A3 valdes");
    }

    else if(papper.selectedSegmentIndex==3){

        NSLog(@"Visitkort valdes");
    }
}

@end
4

2 に答える 2

1

括弧内のものを削除してみてください:

{
    IBOutlet UISegmentedControl *papper;
}

あなたがこれを持っているとき、それは必要ありません:

@property (nonatomic, retain) IBOutlet UISegmentedControl *papper;
于 2013-08-23T13:18:32.470 に答える
0

ここでivar と a@propertyを使用することは問題ではありません。実際、テスト プロジェクトでこの正確なコードを使用しているときは、完全に機能しています。

が Interface Builder のアウトレットにUISegmentedControl接続されていること、およびの「値が変更されました」アクションがに接続されていることを確認します。papperUISegmentedControl-(IBAction)papperskontrollSwitched:

ここに画像の説明を入力

于 2013-08-23T13:32:19.203 に答える