Yüzde RelativeLayout genişlik | Netgez.com
SORU
10 ÅžUBAT 2011, PERÅžEMBE


Yüzde RelativeLayout genişlik

Benim Android Uygulaması Activity bir Giriş için bir form düzeni üzerinde çalışıyorum. Aşağıdaki resmi gibi görünmesini istiyorum o kadar

enter image description here

Aşağıdaki ile bu düzeni elde etmek mümkün olduXML. Sorun, biraz hackish. Sabit kod barındırmak için bir genişlik EditText zorunda kaldım. Özellikle belirtmek zorunda kaldım:

android:layout_width="172dp" 

Gerçekten ana bilgisayar ve baÄŸlantı noktası EditText için yüzde bir geniÅŸlik vermek istiyorum . (Bir ev sahibi, 20% port € gibi.) Bu mümkün mü? AÅŸağıdaki XML benim Droid üzerinde çalışıyor, ama tüm ekranlar için iÅŸe yaramıyor. Çok daha saÄŸlam bir çözüm istiyorum.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@ id/main"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TextView
        android:id="@ id/host_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@ id/home"
        android:paddingLeft="15dp"
        android:paddingTop="0dp"
        android:text="host"
        android:textColor="#a5d4e2"
        android:textSize="25sp"
        android:textStyle="normal" />

    <TextView
        android:id="@ id/port_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@ id/home"
        android:layout_toRightOf="@ id/host_input"
        android:paddingTop="0dp"
        android:text="port"
        android:textColor="#a5d4e2"
        android:textSize="25sp"
        android:textStyle="normal" />

    <EditText
        android:id="@ id/host_input"
        android:layout_width="172dp"
        android:layout_height="wrap_content"
        android:layout_below="@id/host_label"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="4dp"
        android:background="@android:drawable/editbox_background"
        android:inputType="textEmailAddress" />

    <EditText
        android:id="@ id/port_input"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_below="@id/host_label"
        android:layout_marginTop="4dp"
        android:layout_toRightOf="@id/host_input"
        android:background="@android:drawable/editbox_background"
        android:inputType="number" />

    <TextView
        android:id="@ id/username_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@ id/host_input"
        android:paddingLeft="15dp"
        android:paddingTop="15dp"
        android:text="username"
        android:textColor="#a5d4e2"
        android:textSize="25sp"
        android:textStyle="normal" />

    <EditText
        android:id="@ id/username_input"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/username_label"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="4dp"
        android:background="@android:drawable/editbox_background"
        android:inputType="textEmailAddress" />

    <TextView
        android:id="@ id/password_label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@ id/username_input"
        android:paddingLeft="15dp"
        android:paddingTop="15dp"
        android:text="password"
        android:textColor="#a5d4e2"
        android:textSize="25sp"
        android:textStyle="normal" />

    <EditText
        android:id="@ id/password_input"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/password_label"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:layout_marginTop="4dp"
        android:background="@android:drawable/editbox_background"
        android:inputType="textPassword" />

    <ImageView
        android:id="@ id/home"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="false"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:paddingTop="15dp"
        android:scaleType="fitStart"
        android:src="@drawable/home" />

    <Button
        android:id="@ id/login_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@ id/password_input"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="15dp"
        android:text="   login   "
        android:textSize="18sp" >
    </Button>

</RelativeLayout>

CEVAP
10 ÅžUBAT 2011, PERÅžEMBE


android:layout_weight öznitelik arıyoruz. Yüzde düzenini tanımlamak için kullanmak için izin verir.

Aşağıdaki örnekte, sol düğme alanının p'ini kullanır ve sağ tuşu 30%.

<LinearLayout
    android:layout_width="match_parent" 
    android:layout_height="wrap_content">

    <Button
        android:text="left" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight=".70" /> 

    <Button
        android:text="right" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight=".30" />

</LinearLayout>

İhtiyaçlarınıza uygun şekilde bazı EditText ile düğmeleri değiştirebilirsiniz Görünümü, her türlü, aynı şekilde çalışır.

0dp layout_width ayarlamak için emin olun veya fikirlerinizi düzgün ölçekli olmayabilir.

Ağırlık toplamı 1, ben sadece daha kolay böyle okumak bulmak eşit değildir unutmayın. 3, 7 ve ikinci ilk ağırlığı ayarlayabilirsiniz ve aynı sonucu verecek.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • CrazyMan

    CrazyMan

    14 Mayıs 2008
  • inovationgmbh

    inovationgmb

    28 EYLÃœL 2010
  • Rugiagialia

    Rugiagialia

    1 Ocak 2008