2010-02-07 3 views
0

je vais avoir un gros problème que je ne sais pas comment résoudre ...UIToolbar à UIScrollView fixe avec UIViewController comme le défilement comme problème de sous-vue

mon UIToolbar qui est censé être fixé @ le fond du écran, apparaît à l'échelle thorugh tout l'écran.

Dans mon cas, j'ai:

un UIViewController

avec une image scroling avec un UIScrollView.

J'ai donc besoin de la barre d'outils en bas de l'écran mais à la place, elle remplace le défilement de l'image et occupe tout l'écran. Cela s'est passé quand je suis passé de V2 à V3 de l'iphone Xcode ... avant qu'il montre ok ...

Je vais expliquer brièvement comment initialiser les choses: dans le fichier h UIScrollView * myScroll; dans le fichier .M j'ai barre d'outils UIToolbar *;

puis sur le (vide) viewDidLoad {

toolbar = [UIToolbar new]; 
toolbar.barStyle = UIBarStyleDefault; 

toolbar.frame = CGRectMake(0, 410, 320, 50); 
------------------------ 

myScroll.contentSize = CGSizeMake(myImage.frame.size.width, myImage.frame.size.height); 

myScroll.maximumZoomScale = 4.0; 
myScroll.minimumZoomScale = 1; 

myScroll.clipsToBounds = YES; 
CGRect frame2 = myImage.frame; 

frame2.origin.y=frame2.origin.y+40; 
myScroll.contentOffset=frame2.origin; 



myScroll.delegate = self; 

[myScroll addSubview:myImage]; 

    [myScroll.superview addSubview:toolbar];  

de sorte que le cadre fixé sur la barre d'outils ne fonctionne pas ... et il se fixe sur tout l'écran ...

i serait Je préfère ne pas étendre UIScrollView, parce que je veux avoir des boutons qui sont liés à cette classe fonctions ..

La fonctionnalité que je veux accomplir est d'avoir une photo zoomable, panable et quelques options, commenter et voter, et prev. suivant etc..from la barre d'outils alt text http://www.freeimagehosting.net/image.php?ef28ce0bb4.jpg

est ici un aperçu:

Répondre

1

La meilleure façon de le faire est d'utiliser Interface Builder pour configurer votre barre d'outils. Il suffit de déposer un UIToolbar dans votre fenêtre et de l'accrocher à votre contrôleur de vue. Voici comment vous configurez les boutons par programmation, mais vous pouvez tout simplement les ajouter dans IB et les connecter là-bas.

- (void)viewDidLoad { 
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] 
           initWithBarButtonSystemItem:UIBarButtonSystemItemAdd 
           target:self 
           action:@selector(insertNewObject)]; 

    NSArray *items = [NSArray arrayWithObject:addButton]; 
    self.toolbar.items = items; 
} 
+0

je vais essayer, mais je crains que cela bousiller la UIScrollView – PartySoft

+0

Je l'ai essayé, et il ne montre pas la barre d'outils en quelque sorte ... que dans le constructeur d'interface .... je fais une chose pour cacher la barre de TAB et la barre de navigation ... quand je montre la vue ... \t [self.mynav.view setNeedsLayout]; \t \t [self.mynav setNavigationBarHidden: OUI animé: OUI]; \t appDelegate.tabBarController.hidesBottomBarWhenPushed = YES; – PartySoft

+1

Il est vraiment difficile de déboguer ceci sans regarder votre fichier nib. Est-il possible que votre Tabbar soit au-dessus de votre barre d'outils? – kubi

Questions connexes