setvisibility (view.visible) ne fonctionne pas après setvisibility (view.gone)
J'ai vu quelques post à ce sujet et j'ai compris le problème. Mais comment le contourner? J'ai ListView
avec l'élément qui peut être étendue, mais une fois que la vue est parti il ne peut pas être de nouveau visible, à moins qu'il ait un espace libre. Comment faire pour que l'espace?
private void mySetOnItemListener() {
l.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view,
int position, long arg3) {
Log.d("onItemClick","called");
LinearLayout ll = (LinearLayout)view.findViewById(R.id.llOpenedField);
ll.setVisibility(View.VISIBLE);
}
});
}
mon viewLayout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:descendantFocusability="blocksDescendants">
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:weightSum="5" >
<TextView
android:id="@+id/tv_name"
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="4"
android:padding="7dp"
android:text="item"
android:textColor="@android:color/background_dark"
android:textSize="25dp" />
</LinearLayout>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/llOpenedField"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
>
<ImageButton
android:id="@+id/ibInformation"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:src="@drawable/info" />
</LinearLayout>
</LinearLayout>
la LinearLayout
android:id="@+id/llOpenedField"
est ce que j'essaie de faire gone
au départ .
j'ai mis le gone
attribut dans la getView()
à l'intérieur de BaseAdapter
.
source d'informationauteur Jesus Dimrix
Vous devez vous connecter pour publier un commentaire.
Si vous mettez le code d'un élément visible dans son onClickListener, il ne sera pas accessible (si il consomme aucun d'écran de l'espace, vous ne serez pas en mesure de cliquer sur). Vous devriez mettre une mise en page avec une hauteur minimale au-dessous de lui, et lorsque votre vue sur l devient disparu, la nouvelle mise en page shell devenir visible, et il devrait être visible de prise de onClickListener. De cette façon, après votre Vue devient disparu, ce nouveau modèle sera en mesure de le ramener.
veuillez cocher cette réponse. Cette réponse de travailler pour moi.
essayer cela et de le modifier en fonction de votre besoin ,ce n'est pas élément de la liste sur laquelle je suis en cliquant sur
Rendre Linéaire la disposition
android:visibility="gone"
; le premier et le faire.mise à jour :- Ces lignes sont pour vous.. qui fera bon d'élargir et de l'effondrement ,et pas d'espace libre sera là