2009-06-13 9 views
1

ボタン付きのUIViewControllerを作成します。ボタンの唯一の仕事は、いくつかの長方形を描画するためのウィンドウを作成することです。 (私は、Appleのサンプルアプリケーションから "QuartzDemo"からいくつかのコードを取りました。)目的Cは実際に私にフィット感を与えています...pushViewControllerの問題

私はこれを試しても何も起こりません。ここで

は、ボタンのコードです:

- (IBAction)startButtonAct:(id)sender 
{ 
    QuartzViewController *controller; 

    NSLog(@"1"); 
    controller = [[QuartzViewController alloc] initWithTitle:@"Dotsie"]; 
    controller.quartzViewDelegate = [[[RectDrawing alloc] init] autorelease]; 
    [[self navigationController] pushViewController:controller animated:YES]; 
    // [controller release]; 

} 

私は正直誰もが見る必要がある他に何わからないんだけど、ここでは他のものの一部です:

@interface QuartzViewController : UIViewController 
{ 
    QuartzView *quartzView; 
    UIBarStyle barStyle; 
    UIStatusBarStyle statusStyle; 

} 


@protocol QuartzViewDelegate; 

@interface QuartzView : UIView { 

id<QuartzViewDelegate> delegate; 

} 

@property(assign) id<QuartzViewDelegate> delegate; 

@end 

@protocol QuartzViewDelegate<NSObject> 

@required 

// Draw contents into the given view, using the given context and bounds. 
-(void)drawView:(QuartzView*)view inContext:(CGContextRef)context bounds:(CGRect)bounds; 

@end 

助けてください - これは私を夢中にさせている - 私は同じ基本的な問題で今一週間戦ってきた...

答えて

1

最初に、[コントローラのリリース]行がコメントになっていなければなりません。私はあなたがデバッグのためにそれを無効にしたことを確信しています。

あなたが行を挿入した場合:あなたのボタンアクションで

NSLog(@"%@", [self navigationController]); 

を、それが有効なコントローラをログんか、それがnilと言っていますか?それが無ければ、私の推測は、このビューコントローラがナビゲーションコントローラ自体に適切にプッシュされていないことです。

関連する問題