insertSubView:不显示我的意见

我被困在教程中,试图用工具栏切换视图。 我的代码生成良好,我把一些警报检查工具栏正在工作,它是。 但我插入的子视图根本没有显示出来。 任何人都可以帮忙吗?

这是我的主控制器代码。

MainViewController.h是


#import 

@class FlavourPickerView;
@class ShakeView;
@class ResultsView;

@interface MainViewController : UIViewController {

    IBOutlet FlavourPickerView *flavourPickerView;
    IBOutlet ShakeView *shakeView;
    IBOutlet ResultsView *resultsView;
}

@property (retain,nonatomic) FlavourPickerView *flavourPickerView;
@property (retain,nonatomic) ShakeView *shakeView;
@property (retain,nonatomic) ResultsView *resultsView;

-(IBAction)loadFlavourPickerView:(id)sender;
-(IBAction)loadShakeView:(id)sender;
-(IBAction)loadResultsView:(id)sender;

-(void)clearView;

@end


这里是MainViewController.m

#import "MainViewController.h"
#import "FlavourPickerView.h"
#import "ShakeView.h"
#import "ResultsView.h"

@implementation MainViewController

@synthesize flavourPickerView;
@synthesize shakeView;
@synthesize resultsView;


-(IBAction)loadFlavourPickerView:(id)sender{
 UIAlertView *alertDialog;
 alertDialog = [[UIAlertView alloc]
       initWithTitle:@"Flavour selected"
       message:@"Seems to work"
       delegate:nil
       cancelButtonTitle:@"OK!"
       otherButtonTitles:nil];
 [alertDialog show];
 [alertDialog release];

 [self clearView];
 [self.view insertSubview:flavourPickerView.view atIndex:10];
}


-(IBAction)loadShakeView:(id)sender{
 UIAlertView *alertDialog;
 alertDialog = [[UIAlertView alloc]
       initWithTitle:@"Shaker selected"
       message:@"Seems to work"
       delegate:nil
       cancelButtonTitle:@"OK!"
       otherButtonTitles:nil];
 [alertDialog show];
 [alertDialog release];

 [self clearView];
 [self.view insertSubview:shakeView.view atIndex:0];
}


-(IBAction)loadResultsView:(id)sender{
 UIAlertView *alertDialog;
 alertDialog = [[UIAlertView alloc]
       initWithTitle:@"Results selected"
       message:@"Seems to work"
       delegate:nil
       cancelButtonTitle:@"OK!"
       otherButtonTitles:nil];
 [alertDialog show];
 [alertDialog release];

 [self clearView];
 [self.view insertSubview:resultsView.view atIndex:0];

 }


-(void)clearView{
 if(flavourPickerView.view.superview){
  [flavourPickerView.view removeFromSuperview];
 }else if(shakeView.view.superview){
  [shakeView.view removeFromSuperview];
 }else{
  [resultsView.view removeFromSuperview];
 }
}


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
 [self loadFlavourPickerView:nil];
 [super viewDidLoad];
}


- (void)didReceiveMemoryWarning {
 // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];

 // Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
 // Release any retained subviews of the main view.
 // e.g. self.myOutlet = nil;
}


- (void)dealloc {
 [flavourPickerView release];
 [shakeView release];
 [resultsView release];
    [super dealloc];
}

@end

这里是其他视图的一个例子,从FlavourPickerView.h开始


#import 


@interface FlavourPickerView : UIViewController {

}

@end

和FlavourPickerView.m

#import "FlavourPickerView.h"


@implementation FlavourPickerView

- (void)didReceiveMemoryWarning {
    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];

    // Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}

- (void)dealloc {
    [super dealloc];
}


@end

还有一个用于flavourPickerView的笔尖,我在我的mainView中添加了子视图,类设置为FlavourPickerView,笔尖名称为FlavourPickerView.xib。


将视图添加到此UIViewController视图时,是否正确初始化了flavourPickerViewshakeViewresultsView ? 另一件事:避免调用一个UIViewController只是'XXXView',而是尝试'XXXViewController'

链接地址: http://www.djcxy.com/p/87751.html

上一篇: insertSubView: is not showing my views

下一篇: Is it possible to use AdMob ads in WKWebView on iOS?