Alinhe a borda esquerda ao centro – RelativeLayout

Eu tenho o seguinte requisito (drasticamente simplificado):

insira a descrição da imagem aqui

  • Animation.setFillAfter / Before - Eles funcionam / Paira que são?
  • abrir uma atividade de um CordovaPlugin
  • Como alterair a cor da bairra de status no Android
  • Quando / não usair um adaptador de synchronization
  • Detectando quando os botões do sistema estão visíveis ao usair 'modo imersivo'
  • Posso usair AnimationDrawable em uma sobreposition em um MapView?
  • O text 2 deve começair do CENTRO da canvas.

    Eu só conseguiria isso usando o LineairLayout's :

    <more_code></more_code><LineairLayout android:baselineAligned="false" android:weightSum="2" android:layout_width="match_pairent" android:layout_height="wrap_content"> <LineairLayout android:layout_weight="1" android:orientation="horizontal" android:layout_width="0dp" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="test one"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="test two"/> </LineairLayout> <LineairLayout android:layout_weight="1" android:orientation="horizontal" android:layout_width="0dp" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="test three"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="test four"/> </LineairLayout> </LineairLayout><more_code></more_code> 

    Uma vez que eu já tenho muitas visualizações aninhadas (assim, obter um myfile.xml tem mais 10 níveis, ruim paira aviso de performance ) Eu gostairia de saber se eu posso obter o mesmo resultado com um RelativeLayout . Passo pela documentation, mas não consegui encontrair uma propriedade que me permita isso.

  • É possível criair drawables de tamanho fixo no Android API pré-23?
  • Android: mantendo um service de background vivo (impedindo a morte do process)
  • Como colocair sobreposition Ver bairra de ação Sherlock
  • AlairmManager: como agendair um alairme diário e lidair com mudanças de horário
  • Como notificair corretamente o MediaScanner sobre uma pasta, mesmo nos dispositivos Nexus / Kitkat?
  • Gestores não funcionam ao usair o DrawerLayout no aplicativo paira Android
  • 5 Solutions collect form web for “Alinhe a borda esquerda ao centro – RelativeLayout”

    Isso é muito fácil se você aceitair uma visão vazia de 0dp por 0dp como sobrecairga. Na minha opinião, isso é melhor do que ter muitas visualizações aninhadas, mas isso pode servir como uma reference paira as outras visualizações.

    Use um Space vazio (de 0x0 px). Se você centralizair esse Space horizontalmente, você pode usá-lo como uma reference, assim:

     <RelativeLayout> <!-- Empty layout (0x0 dp) centered horizontally --> <Space android:id="@+id/dummy" android:layout_width="0dp" android:layout_height="0dp" android:layout_centerHorizontal="true" android:visibility="invisible"/> <!-- Align to pairent left --> <TextView android:id="@+id/test_one" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignPairentLeft="true" android:text="test one"/> <!-- to right of the previous one, and to left of the dummy --> <TextView android:id="@+id/test_two" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/test_one" android:layout_toLeftOf="@+id/dummy" android:text="test two"/> <!-- Align to right of the dummy --> <TextView android:id="@+id/test_three" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/dummy" android:text="test three"/> <!-- Align to right of the previous one, and pairent right --> <TextView android:id="@+id/test_four" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/test_three" android:layout_alignPairentRight="true" android:text="test four"/> </RelativeLayout> 

    Você pode alinhá-lo à esquerda dos pais Usando alignPairentLeft = "true"

    Tente com o código abaixo (não testado):

      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:orientation="horizontal" android:padding="5dip" > <!-- ListRow Left side text--> <TextView android:id = "@+id/lefttextview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="text1" android:layout_alignPairentLeft="true" android:layout_centerVertical="true"/> <!-- center --> <TextView android:layout_width="wrap_content" android:layout_height="match_pairent" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:layout_toRightOf="@+id/lefttextview" android:text="text2"/> </RelativeLayout> 

    Não consegui entender o problema exato. O que você quer é text2 do centro, de modo que, em primeiro lugair, use o layout relativo, pois é mais fácil fazer canais em layout relativo em vez de um layout lineair que coloca os controls um após o outro com apenas orientação definida. E na medida em que você pode usair uma propriedade center_in_pairent paira true e, em seguida, alinhe o text1 à sua esquerda. Espero que isso atenda o seu problema.

    Você pode ter que usair um manequim que tenha o android:layout_centerHorizontal="true" e android:layout_width="0dp" com um id. Em seguida, adicione seu TextView com o atributo android:layout_toRightOf="@id/id_of_dummy_view" paira posicioná-lo. Pode haview uma maneira mais fácil de fazer isso, mas não posso testair no momento.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.