0

最近、Objective-C と iPhone/iPad 開発を独学で学び始めました。Java/Android を含むコーディングの経験しかなかった私は、この新しい言語でいくつかの問題を抱えていました。

UISegmentedControl「メンバー」ボタンが押されたときに表示されるビューを決定するために、このアプリで使用しようとしています。これを行うには、「メンバー」ボタンが押されたときにUISegmentedControl「」という名前の現在選択されているテキストを から取得し、それがまたはであるかどうかを確認して、どのビューを表示するかを決定します。 memberPicker@"Current"@"Alumni"

ここに画像の説明を入力

この関数は正しく動作しているように見えますが、UISegmentedControl の [Alumni] ボタンをクリックすると、次のエラーでアプリがクラッシュします。

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MainPageViewController MemberSegmentedControl:]: unrecognized selector sent to instance 0x7557250'

私の問題は、UISegmentedControl を適切に宣言または設定することにあると思います。配列などを取ることができることを理解しています。しかし、Current または Alumni を交互に選択するだけでよく、残りは [メンバー] ボタンで行います。この問題を解決する方法についてのアイデアはありますか?

ここに私の.mビューからのコードがあります

#import "MainPageViewController.h"
#import "AKPsiAppViewController.h"

@interface MainPageViewController ()
@property (weak, nonatomic) UISegmentedControl *memberPicker;

@end

@implementation MainPageViewController

@synthesize memberPicker = _memberPicker;


- (IBAction)membersButtonPressed:(UIButton *)sender
{
    if([[self.memberPicker titleForSegmentAtIndex: self.memberPicker.selectedSegmentIndex] isEqualToString:@"Current"])
   {
      [self performSegueWithIdentifier:@"Current Member Segue" sender:self]; 
   }
}
@end
4

2 に答える 2

2

おそらくUISegmentedControl、Interface Builderの を、クラスの で後で削除したIBOutlet名前に接続した可能性があります。以外に追加の接続がない場合は、Interface Builder でへの接続を確認します。MemberSegmentedControl@interfaceUISegmentedControlmemberPicker

それが役に立てば幸い!

于 2013-06-23T19:01:57.447 に答える