J'ai remarqué quelque chose qui n'a jamais été un problème auparavant. J'ai fait un projet pour iPad où j'ai utilisé plusieurs UIPickerView
placés côte à côte, horizontalement. Ici, ils respectent le cadre CGRect
que je les initialise, ce qui signifie que placer d'autres éléments de chaque côté d'eux n'était pas un problème.UIPickerView prend tout l'espace horizontal sur l'iPhone, mais pas sur iPad?
Maintenant j'essaye de faire ceci sur un projet d'iPhone et ici un UIPickerView
insiste pour être le seul élément. Il se dimensionne lui-même pour remplir l'écran horizontalement, avec les graphiques "autour".
J'ai essayé différentes approches, placez le UIPickerView
à l'intérieur d'une vue différente puis dimensionnez cette super vue, qui conduit juste à un écrêtage, pas à un redimensionnement. Une autre chose est que le UIPicker
insiste pour être placé au centre de l'écran. Cela signifie essentiellement que lorsqu'un UIPickerView
est ajouté à l'écran, même si son composant unique n'a que 70 px de large, ces 320 px de l'écran sont épuisés. Ce que j'essaie d'accomplir est d'avoir un UIPicker
sur le côté droit de l'écran et un bouton à gauche de celui-ci. Est-ce que je regarde quelque chose d'évident ici? L'espoir que quelqu'un pourrait donner un coup de main, merci à l'avance :)
Rien de plus compliqué que cela:
UIView *container = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 250.0f, 165.0f)];
UIPickerView *picker = [[UIPickerView alloc] initWithFrame:container.frame];
[picker setDelegate:self];
[picker setDataSource:self];
[container addSubview:picker];
le cadre que je mets, n'est pas respecté. Il prend tout l'espace horizontal.
Salut Tom, vous avez raison, j'obtenir le même résultat en ajoutant d'abord la UIPicker (UIPickerView * sélecteur = [[UIPickerView alloc ] initWithFrame: CGRectZero];) sans cadre, puis définissant le cadre après que le sélecteur a été ajouté à une vue. Je vous remercie:) – RickiG