2012-03-16 10 views
0

私はアプリケーションを構築していますが、2番目のビューを開こうとすると問題があります。1つのパーティクルビューを選択したときにキャッチされない例外

コード:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view. 
    NSInteger FontSizeValue = [[NSUserDefaults standardUserDefaults] integerForKey:@"FontSize"]; 
    UIFont *pagedefault = [UIFont fontWithName:@"Arial" size:FontSizeValue]; 
    Page1Text.font = pagedefault; 
    Page2Text.font = pagedefault; 
} 

出力:

2012-03-16 11:16:11.573 Accessibility Guide[3418:f803] *** Terminating app due to 
uncaught exception 'NSUnknownKeyException', reason: '[<TextViewController 0x687e4d0> 
setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key 
Page2.' 
*** First throw call stack: 
(0x13cd022 0x155ecd6 0x13ccee1 0x9c5022 0x936f6b 0x936edb 0x951d50 0x23971a 0x13cedea 
0x13387f1 0x23826e 0xde1fc 0xde779 0xde99b 0xded11 0xf08fd 0xf0aef 0xf0dbb 0xf185f 
0xf1e06 0xf1a24 0x44dde6 0x4424d0 0xa8581 0xa87fa 0x93d85d 0x13a1936 0x13a13d7 0x1304790 
0x1303d84 0x1303c9b 0x12b67d8 0x12b688a 0x17626 0x233d 0x22a5) 
terminate called throwing an exception(lldb) 

任意のより多くの情報を要求する自由を感じます。私はまだかなり客観的に新しいです - Cので、私はベストを尽くします。

注:すべてのビューが同じように見えるので、2つのビュー(これまでは2つのビューしかありませんでしたが、もっと多くのビューがあります)に対して1つのビューコントローラーファイル(TextViewController.h TextViewController.m)を使用しています。同じコード。各ビューには、 "次ボタン" および "テキストボックス"

TextViewController.h

#import <UIKit/UIKit.h> 

@interface TextViewController : UIViewController 
@property (weak, nonatomic) IBOutlet UITextView *Page1Text; 
@property (weak, nonatomic) IBOutlet UITextView *Page2Text; 

@end 

TextViewController.m

#import "TextViewController.h" 

@interface TextViewController() 

@end 

@implementation TextViewController 
@synthesize Page1Text; 
@synthesize Page2Text; 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view. 
    NSInteger FontSizeValue = [[NSUserDefaults standardUserDefaults] integerForKey:@"FontSize"]; 
    UIFont *pagedefault = [UIFont fontWithName:@"Arial" size:FontSizeValue]; 
    Page1Text.font = pagedefault; 
    Page2Text.font = pagedefault; 
} 
- (void)viewDidUnload 
{ 
    [self setPage1Text:nil]; 
    [self setPage2Text:nil]; 
    [super viewDidUnload]; 
    // Release any retained subviews of the main view. 
} 

答えて

1

これは、いくつかのコンポーネントは、XIBファイルと同様、あなたのクラスはそれを見つけることができないキーのためのアクセサを持っていることを期待するときに発生するようです。あなたはPage2に何かを縛っていますか?

類似の質問herehere

+0

Page 2私はIBOutletを持っているので、フォントを設定することができます。 – ReArmedHalo

+0

また、私はエラーから何を得ているのか、それは私が設定を呼び出して、それを2回使用することを好きではありません。 – ReArmedHalo

+0

解決策はあなたが投稿した同様の質問でかなり言われたので私はあなたをマークしました(第2のもの)答えに対する私の他のコメントを見てください – ReArmedHalo

1

Page1Text何ですかを持っていますか? (そしてPage2Text) TextViewControllerのインスタンスですか? (もしそうなら、変数は小文字で始まります) もしそうなら..あなたのTextViewControllerクラスはプロパティ名フォントを持っていますか?

@interface TextViewController : UIViewController 
@property (nonatomic, strong) UIFont* font; 
@end 
+0

Page1テキストとPage2Textは、ビューのテキストフィールドです。私はあなたの他の質問にも答えてくれると信じています。私は大文字と小文字で名前を宣言する正しい方法を忘れています。申し訳ありません – ReArmedHalo

+0

あなたのクラス(プロパティが宣言されている場所)のインターフェイスを投稿できますか?自己からプロパティにアクセスしようとしましたか? (self.Page1Text.font = pagedefault) – Francesco

+0

もちろん、主な質問に追加します。 – ReArmedHalo

関連する問題