Quatre vues utilisent le même xml. Je souhaite afficher une disposition linéaire pour view 1
seulement. Je mets Android:visibility="gone"
en xml. Et puis je fais ce qui suit pour view 1
-
LinearLayout layone= (LinearLayout) view.findViewById(R.id.layone);
layone.setVisibility(View.VISIBLE);
Mais cela ne définit pas la visibilité sur visible.
N'est-il pas possible d'afficher la vue une fois son GONE
déclaré en xml?
Je ne veux pas inverser la logique en faisant simplement,
layone.setVisibility(View.GONE);
dans chacune des trois vues sauf la vue 1.
Des idées ou des commentaires?
MISE À JOUR:
Mon xml -
<TextView
Android:id="@+id/layone"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Previous Page"
Android:textColor="#000000"
Android:textSize="16dp"
Android:paddingLeft="10dp"
Android:layout_marginTop="10dp"
Android:visibility="gone" />
<LinearLayout
Android:layout_width="fill_parent"
Android:layout_height="50dp"
Android:orientation="horizontal"
Android:padding="10dp"
Android:gravity="center_vertical"
Android:layout_marginLeft="10dp"
Android:layout_marginRight="10dp"
Android:tag="PrevEntries"
Android:id="@+id/laytwo"
Android:layout_marginTop="10dp"
Android:background="@layout/roundedtext"
Android:visibility="gone" >
<TextView
Android:id="@+id/laythree"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_weight="1"
Android:text="Previous Page"
Android:textColor="#000000"
Android:textSize="18dp"
Android:gravity="center"
Android:textStyle="bold" />
</LinearLayout>
Fait en l'ayant comme ça:
view = inflater.inflate(R.layout.entry_detail, container, false);
TextView tp1= (TextView) view.findViewById(R.id.tp1);
LinearLayout layone= (LinearLayout) view.findViewById(R.id.layone);
tp1.setVisibility(View.VISIBLE);
layone.setVisibility(View.VISIBLE);
<TextView
Android:id="@+id/layone"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Previous Page"
Android:textColor="#000000"
Android:textSize="16dp"
Android:paddingLeft="10dp"
Android:layout_marginTop="10dp"
Android:visibility="gone" />
layone est un TextView.
Vous vous êtes trompé.
LinearLayout layone= (LinearLayout) view.findViewById(R.id.laytwo);// change id here
layone.setVisibility(View.VISIBLE);
devrait faire le travail.
ou changez comme ceci pour afficher le TextView:
TextView layone= (TextView) view.findViewById(R.id.layone);
layone.setVisibility(View.VISIBLE);
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/activity_register_header"
Android:minHeight="50dp"
Android:orientation="vertical"
Android:visibility="gone" />
Essayez-le .. Pour moi, ce code fonctionne ..