0

I am developing an android application,in that i am using a layout that contains one main layout and two sub layouts.when i am click main layout "invitation_single" the two sub layouts "hidden" & "hidden1" are visible(invitation_single is hide) ,In "hidden" layout i am using 3 buttons and "hidden1" i am using two "textviews".Now my question is,when i am click anyone buttons(yes,no,maybe) in "hidden" layout,the "hidden" layout buttons are need to be hide and show only the "hidden1" layout textbox values how to get that result.

this is my layout code,

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/invitation_single"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:divider="?android:dividerVertical"
    android:dividerPadding="5dp"
    android:showDividers="middle"
    tools:context=".MainActivity">

    <ImageButton
        android:id="@+id/image"
        android:layout_width="@dimen/contact_image"
        android:layout_height="50dp"
        android:src="@drawable/ic_action_event" />

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="50dp"
        android:layout_weight="1"
        android:clickable="false"
        android:focusable="true"
        android:orientation="vertical">

        <TextView
            android:id="@+id/invitation_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="0dp"
            android:paddingRight="0dp"
            android:paddingTop="3dp"
            android:textColor="@color/black"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/invitation_place"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="5dp"
            android:paddingRight="0dp"
            android:textColor="@color/black"
            android:textSize="15sp" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/hidden"
        android:layout_width="600dp"
        android:layout_height="60dp"
        android:layout_marginTop="60dp"
        android:layout_weight="1"
        android:clickable="true"
        android:focusable="true"
        android:orientation="horizontal"
        android:paddingTop="1dp"
        android:visibility="gone"
        android:weightSum="3">


        <Button
            android:id="@+id/yesbutton"
            android:layout_width="100dp"
            android:layout_height="50dp"
            android:layout_marginLeft="0dp"
            android:layout_weight="1"
            android:background="@color/blue"
            android:text="Yes"
            android:textColor="@color/black"></Button>

        <Button
            android:id="@+id/nobutton"
            android:layout_width="100dp"
            android:layout_height="50dp"
            android:layout_marginLeft="30dp"
            android:layout_weight="1"
            android:background="@color/blue"
            android:text="No"
            android:textColor="@color/black"></Button>

        <Button
            android:id="@+id/buttonmaybe"
            android:layout_width="100dp"
            android:layout_height="50dp"
            android:layout_marginLeft="30dp"
            android:layout_weight="1"
            android:background="@color/blue"
            android:text="Maybe"
            android:textColor="@color/black"></Button>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/hidden1"
        android:layout_width="1000dp"
        android:layout_height="50dp"
        android:layout_marginLeft="-235dp"
        android:layout_weight="1"
        android:clickable="true"
        android:focusable="false"
        android:orientation="vertical"
        android:visibility="gone">

        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="0dp"
            android:paddingLeft="0dp"
            android:paddingRight="10dp"
            android:paddingTop="3dp"
            android:textColor="@color/black"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/place"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="0dp"
            android:paddingLeft="0dp"
            android:paddingRight="10dp"
            android:textColor="@color/black"
            android:textSize="15sp" />
    </LinearLayout>
</LinearLayout>

And this is my java code,

Button yes = (Button) convertView.findViewById(R.id.yesbutton);
            Button no = (Button) convertView.findViewById(R.id.nobutton);
            Button maybe = (Button) convertView.findViewById(R.id.buttonmaybe);
final LinearLayout first = (LinearLayout) convertView.findViewById(R.id.invitation_single);
            final LinearLayout second = (LinearLayout) convertView.findViewById(R.id.hidden);
            final LinearLayout third = (LinearLayout) convertView.findViewById(R.id.hidden1);
  yes.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    third.setVisibility(second.GONE);


                }
            });

in above code i am try to hide the "hidden" layout buttons and show only the "hidden1" textviews.

SANAT
  • 8,489
  • 55
  • 66
selva simon p
  • 147
  • 2
  • 13

2 Answers2

2

Call setVisibility(View.GONE);

If you use View.GONE value, the element will be removed from the layout hence it won’t occupy any space in the layout.

IntelliJ Amiya
  • 74,896
  • 15
  • 165
  • 198
1

Try second.setVisibility(View.GONE); to hide "hidden" layout, and third.setVisibility(View.VISIBLE); to show textviews under "hidden1"

PS: You should pay a particular attention to naming variables, yours doesn't make much sense, and it will be hard for other developers to maintain your code.

moud
  • 729
  • 9
  • 19