2010-05-18 7 views
2

J'ai une vue modale avec un textview et un bouton. Lorsque le clavier est affiché, il couvre certains de mes éléments d'interface utilisateur. Je voudrais que mon modal soit défilable afin qu'il puisse être vu pendant que le clavier est affiché. Comment puis-je faire ceci? Utilisez un UIScrollView au lieu d'un UIView ordinaire.Comment faire défiler la vue modale?

Répondre

1

J'ai eu la même question, et je l'ai joué avec un peu, la fixation d'un UIScrollView ne suffit pas , comme dans l'inspecteur vous devriez 1er. augmentez la hauteur, puis dans les attributs, cochez les cases suivantes: Défilement activé, Bounce Scroll, toujours rebondir verticalement.

Modifié: Vous avez oublié la chose la plus inportant: dans l'inspecteur taille, définissez le champ Buttom (sous le contenu) à la taille que vous souhaitez, (960 est deux fois la taille normale)

+0

L'ajout d'un UIScrollView au dessus de UIView est également possible (puis mise en page de tous vos contrôles) mais vous devrez également coder: connectez-le à une instance UIScrollView, et dans la méthode viewDidLoad, ajoutez ce qui suit: scrollView.contentSize = CGSizeMake (scrollView.frame.size.width * 3, scrollView.frame.size.height); scrollView.showsHorizontalScrollIndicator = NO; scrollView.showsVerticalScrollIndicator = NO; scrollView.scrollsToTop = NO; scrollView.delegate = self; –

+0

Tout est très bien quand j'ajoute l'UIScrollView. J'ai un UITextView qui est le premier répondeur. Quand il est à l'intérieur de UIScrollView, il n'est plus le premier répondeur. Bizarre. Avez-vous des pensées? –

+0

sûrement vous pouvez l'assigner pour être le premier répondeur dans le viewDidLoad aussi bien; [textField1 becomeFirstResponder]; –

0

Vous pouvez désactiver le défilement lorsque vous ne voulez pas l'utilisateur de pouvoir avec:

[theView setScrollEnabled:NO]; 
+0

Puis-je placer un UIScrollView intérieur un UIView et qu'il contienne mes autres UIControls? –

+0

Oui, vous pouvez. Ou vous pouvez remplacer UIView par UIScrollView car UIScrollView est une sous-classe de UIView et fait donc tout comme un UIView et plus (le scrolling). – jamone

Questions connexes