J'ai un N'hésitez pas à me signaler une page de référence qui l'explique - i Impossible de trouver quoi que ce soit. p> mise à jour: j'ai essayé de la définir à Voici le XML pertinent: P> relativenelayout code> vue et 3 points de vue des enfants aussi. J'essaie de les cacher tout en code en définissant la mise en page relative à invisible à l'aide de
SETVISPIBILITY CODE>. La chose amusante est que lorsque j'utilise
visibilité (vue.inivisible) code> Seul le premier enfant est caché, pas les deux autres. Donc, je suis un peu confus - si je fixe une vue parent sur Invisible ne devrait-il pas changer la visibilité de tous les enfants ou les laisser tous seuls?
visual.gone code>, mais la même chose se produit, sauf les deux enfants qui restent visibles avancent un peu . P>
public void onClick(View v) {
//Toggle viewing of options, using "if" in case it is set to View.GONE
View view = findViewById(R.id.optionsform);
if (view.getVisibility() == View.VISIBLE)
view.setVisibility(View.INVISIBLE);
else
view.setVisibility(View.VISIBLE);
}
4 Réponses :
Vous devez définir sur la page vue.gone code> état. p>
il pourrait juste vouloir se cacher (invisible) ... mais la peine d'essayer
Parti ne semble pas aider - il déplace simplement les deux enfants qui restent visibles un peu plus loin dans l'écran.
Essayez de définir les trois vues sur ou P> Vous pouvez essayer P>. > View.invisible CODE> ou vers
VIEW.GONE CODE>.
public void onClick(View v) {
//Toggle viewing of options, using "if" in case it is set to View.GONE
RelativeLayout view = (RelativeLayout) findViewById(R.id.optionsform);
if (view.getVisibility() == View.VISIBLE)
view.setVisibility(View.INVISIBLE);
else
view.setVisibility(View.VISIBLE);
}
Eh bien oui, je pourrais faire cela, mais c'est beaucoup de code redondant si cela le fait au parent devrait être suffisant. Je vais examiner lundi à nouveau en utilisant les suggestions ci-dessus.
<TextView android:id="@+id/tvdictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" **android:layout_below="@+id/tvoptions"** // *should be android:layout_below="@id/tvoptions* android:layout_marginLeft="30dp" android:layout_marginTop="16dp" android:text="@string/dictionary" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="#f000" /> <Spinner android:id="@+id/dictionary" android:layout_width="wrap_content" android:layout_height="wrap_content" **android:layout_alignTop="@+id/tvdictionary"** // *should be android:layout_alignTop="@id/tvdictionary* android:layout_alignParentRight="true" android:layout_marginTop="-10dp" android:layout_marginLeft="6dp" android:layout_toRightOf="@+id/tvdictionary"// *should be android:layout_toRightOf="@id/tvdictionary* /> @id is used while referencing layout id @+id is used while creating new layout id
Intéressant, ce qui précède est un code autogénéré du plugin Eclipse Adt. Je vais donner ça un aller et je reviendrai vers toi.
J'ai examiné cela et le "+" ne fait pas vraiment beaucoup de différence - il s'agit davantage des outils de vérifier que vous n'introduisez pas de fautes de frappe mais n'affecte pas la production.
résolu. Une désinstallation puis l'installation de l'application sur mon appareil Android a fait le tour. Je vais méfier de cela à l'avenir p>
Commentaire Si vous avez bowvote. C'était la solution pour moi.
S'il vous plaît poster votre mise en page et votre code. La façon dont vous avez décrites est correcte, cachez la mise en page cachée tous les enfants dans des circonstances normales.
C'est vraiment étrange, je me demande si c'est quelque chose à faire avec la mise en page relative .. Pouvez-vous essayer de le modifier temporairement à linearlayout et voir si le même problème se produit
Pourriez-vous placer votre code d'activité entier ici ..
Résolu. Une désinstallation puis l'installation de l'application sur mon appareil Android a fait le tour. Je vais porter sur cela à l'avenir.