0

にプロパティを設定することはできません。私は、ヘッダにInterface Builderでアップ接続されている私はIBOutletとしてUIButtonを持ったビューコントローラ、MainViewControllerがparentViewController

を有するIはで

@interface MainViewController : UIViewController 
{ 
    SettingsViewController *settingsViewController; 
    UIButton *leftTextButton; 
} 

@property (nonatomic, retain) IBOutlet UIButton *leftTextButton; 

を有します私は

を以下のように私は、その後、設定サブビューを追加するプロパティ

@synthesize leftTextButton; 

を合成した.Mボタンのタイトルはない - これは、それが動作しませんクラッシュしませんが、私はその後、

[ ((MainViewController*) self.parentViewController).leftTextButton setTitle:@"Ahhhhh !!" forState:UIControlStateNormal]; 

親ビューにUIButton * leftTextButtonのタイトルを更新しようとSettingsViewController以内

SettingsViewController *settingsViewController = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController" 
                   bundle:nil]; 
[self.view.superview addSubview:settingsViewController.view]; 

変化する。

すべてのヘルプは非常にあなただけの親ビューでのView Controllerのビューを追加する場合は、ビューコントローラは、その親ビューコントローラの見当がつかないなり、これparentViewControllerプロパティがnilある

+0

をどの方法でタイトルを更新していますか?それがinitメソッドにあればうまくいかず、viewDidLoadが正しい場所になります。 – Clafou

答えて

2

parentViewControllerプロパティは、ビューコントローラはモーダル提示されない限りnilある、またはUINavigationController下にありますか、 a UITabBarController

与えるあなたSettingsViewControllermainViewControllerプロパティ:作成

@interface SettingsViewController 
... 
@property (assign) MainViewController *mainViewController; 

設定し、それSettingsViewController

あなたはボタンのタイトルに更新するために使用することができその後
SettingsViewController *settingsViewController = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController" bundle:nil]; 
settingsViewController.mainViewController = self; 

[self.mainViewController.leftTextButton setTitle:@"Ahhhhh !!" forState:UIControlStateNormal]; 
+0

ロブ。早速のご返事ありがとうございます。 – CarlG

1

をいただければ幸いです。 SettingsViewControllerをaddChildViewController:経由でMainViewControllerに追加し、を介してSettingsViewControllerにこの階層を作成したことを通知する必要があります。その後、parentViewControllerにアクセスできるはずです。

(注:これはiOSの5だけのためである、あなたが奪うのmayoffの回答を参照してください。4 iOSの上ではまだしている場合)

+0

TriPhoenix - 以前のiOSをターゲットにしてより大きなユーザーベースを使用可能にしようとするiOS5を使用していません。しかし、素早く反応してくれてありがとう。 – CarlG

関連する問題