quiero tener dos relativelayout en primer relativelayout tienen el mapa y en segundo relativelayout tengo la lista..,yo quiero que a partir de sólo el diseño con el mapa será visible en la pantalla con un botón,cuando hago clic en el botón, a continuación, el diseño con el listview llegar a abrir por el lado derecho con el nuevo botón nuevo en la parte superior de la misma, y prevoius botón get ocultar.y la pantalla se divide en dos partes con diferentes diseños..he hecho un poco de cosa, pero desde la puesta en adelante m recuperar la mitad de la mitad de la pantalla.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/ListView_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1" >

    <RelativeLayout
        android:id="@+id/rl_ListView1"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.5" >

        <Button
            android:id="@+id/getdirection"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:text="Get Directions" />

        <fragment
            android:id="@+id/map"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            class="com.google.android.gms.maps.MapFragment" >
        </fragment>
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/rl_ListView2"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.5"
        android:visibility="invisible" >

        <Button
            android:id="@+id/hide"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:text="Get Directions" />

        <ListView
            android:id="@+id/list"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="@android:color/white"
            android:visibility="invisible" />
    </RelativeLayout>

</LinearLayout>

MainActivity

 show = (TextView)findViewById(R.id.getdirection);
         show1 = (TextView)findViewById(R.id.hide);
         rt = (RelativeLayout)findViewById(R.id.rl_ListView2);
show.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {
                            //TODO Auto-generated method stub

                            if(rt.getVisibility()==View.INVISIBLE)
                            {
                                rt.setVisibility(View.VISIBLE);

                            }
                           show.setVisibility(View.INVISIBLE);


                        }
                    });
show1.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View v) {
                            //TODO Auto-generated method stub

                            if(rt.getVisibility()==View.VISIBLE)
                            {
                                rt.setVisibility(View.INVISIBLE);

                            }
                           show1.setVisibility(View.INVISIBLE);


                        }
                    });
  • establecer la visibilidad de la disposición en el botón haga clic para ver
  • Trate de usar la visibilidad IDO en lugar de INVISIBLE.
InformationsquelleAutor user3683036 | 2014-07-02

4 Comentarios

  1. 2

    Intente esto:

    Usted está recibiendo layout1 en la mitad de la pantalla de inicio debido al peso de la propiedad. Usted puede tratar de no dar el peso en el inicio y darle a través de programación en el botón haga clic en.

    button.setOnClickListener(new OnClickListener() {
    
        @Override
        public void onClick(View v) {
            //TODO Auto-generated method stub
    
            button1.setVisibility(View.GONE);  //hide old button
            layout2.setVisibility(View.VISIBLE);  //show layout2
            //set Relativelayout 1 to half screen
            RelativaLayout.LayoutParams params = layout1.getLayoutParams(); 
            params.weight = 0.5;
            layout1.setLayoutParams(params);
        }
    });

    Espero que esto ayude.

    • PurpleDroid mi pregunta es sobre la actividad de inicio sólo mapa será visible en la pantalla y un botón..,y en el botón haga clic en pantalla se divide en 2 partes ..1 wll de visualización de mapas y otros mostrará la lista
    • trate de editar respuesta.
    • no sé por qué, pero params.peso resintonizar me de error..,no tomando el peso como una propiedad de param
    • Intente LinearLayout.LayoutParams en lugar de RelativeLayout.LayoutParams. Referencia
    • lo que no me ayuda. @PurpleDroid
  2. 0
     button.setOnClickListener(this);
        public void onClick(View v) {
        layoutid.setVisibility(View.GONE);
        }
    • Se han hecho ya @ Hak Hak
    • ¿qué desea lograr y lo que está sucediendo me pueden entender que la pregunta anterior
    • Hak Hak mi pregunta es sobre la actividad de inicio sólo mapa será visible en la pantalla y un botón..,y en el botón haga clic en pantalla se divide en 2 partes ..1 wll de visualización de mapas y otros mostrará la lista.ahora en inicio m llegar dividiendo la pantalla que quiero en el botón haga clic en
  3. 0

    Puedes probar con isShown() como sugiere Amiya

    <b>
    button2.setOnClickListener(new View.OnClickListener(){
    @Override
    public void onClick(View view) {
       if(button1.isShown()) {
    
       //Your_Staff
        }
        else{
              //Your_Staff
        }
    }
    });
    </b>

Dejar respuesta

Please enter your comment!
Please enter your name here