2011-09-15 11 views
0

私はshowCal方法別のクラスからメソッドにアクセスするには? <strong>CalViewController</strong>クラスで

-(IBAction) showCal{ 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:1.0]; 
if ([viewMainView superview]) { 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES]; 
    [viewMainView removeFromSuperview]; 
    [self.view addSubview:viewCalView]; 
} 
} 

を持っている私は、カスタムセルのためのXIBを持つ別のクラスであるCustomCellクラスからそれを呼びたいです。 このようにしてみましたが(buttonPressedメソッドはカスタムセルのボタンに関連付けられています)。

-(IBAction) buttonPressed{ 
CalViewController *objCalViewController=[[calViewController alloc] init]; 
[objCalViewController showCal]; 

} 

しかし、動作しません。

+0

' - (void)showCal'で' - (IBAction)showCal'を実行します。コンパイラは行 '[objCalViewController showCal];で警告を表示しますか? – Nekto

+0

CalViewController * objCalViewController = [[calViewController alloc] iinitWithNibName:@ "" CalViewController "bundle:nil]; dis iがibactionで試したようにしてみてください。両方ともView Controllerです。 – Srinivas

+0

あなたは現在のビューにサブビューとしてcalviewを追加しませんでした。アニメーションはtat viewcontroler ...でのみ動作します.uはforViewをself.viewとして設定しました... – booleanBoy

答えて

4

[objCalViewController showCal]として機能させる別のクラスのIBActionメソッドを呼び出すことができる方法はありません。その前にブレークポイントを置き、関数を - (void)showCalに変更し、CalViewControllerクラスの.hファイルに - (void)showCalを入れることを忘れないでください:)

+0

多くの人に感謝、それは動作します。メソッドが呼び出されます。しかし問題は私がshowCalメソッドを実装した方法です。それはアニメーションが動作しないことを意味します:( – sajaz

3

あなたは、このようにユーザー・メソッド[objCalViewController showCal];を呼び出すことができますしかし、あなたは、単に-(void) showCal

関連する問題