2011-03-08 15 views
50

İplikçikler için ürün stili olan textview.xml ürünüm var.Özel_style.xml spinner öğesinde birden fazla yerçekimi değeri belirtmek mümkün mü?

<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="left|center_horizontal" 
    android:textSize="18sp"> 
</TextView> 

Ben hem (Gravity.LEFT | Gravity.CENTER_HORIZONTAL) belirtmek mümkün olduğunu biliyorum ama çalışmıyor xml - yalnızca metin sola taşınır.

+1

Neyi başarmaya çalışıyorsunuz?Yatay bir yerçekimi ve bu şekilde dikey bir yer çekimi belirtebilirsiniz, ancak iki yatay ayarın anlamı yoktur. – adamp

+1

Benim hatam, üzgünüm. Tabii ki aslında "left | center_vertical" idi. Şimdi işe yaradığı için teşekkürler. – 87element

cevap

146

87element,

Ben size sadece gravity kullandığınız layout_gravity kullanmak istediğini inanıyoruz ??

Evet, bu layout_gravity özniteliklerinin ikisini birlikte '|' ile birleştirebilirsiniz. belgelerinde belirtildiği gibi: http://developer.android.com/reference/android/R.attr.html#layout_gravity

Ama (adamp onun yorumunda belirtildiği gibi) yerine gravity ait layout_gravity kullanarak birleştirmek için çalışıyoruz ayarları anlamı yok. Temelde aynı sıra boyunca sola ve merkeze hizalanacağını söylüyorsun. Bu durumda hem left ve center_horizontal, yatay konumlara başvurunuz.

TextView ebeveyne göre hizalamayı nerede deniyorsunuz?

Ebeveyniniz düzeni bir pozisyon seçebileceğiniz bir ızgara gibi:

| [1] [2] [3] |

| [4] [5] [6] |

| [7] [8] [9] |

  1. Üst Sol: android:layout_gravity="top|left"

  2. Üst Merkezi: android:layout_gravity="top|center_horizontal"

  3. Üst Sağ: android:layout_gravity="top|right"

  4. Merkezi-Sol: android:layout_gravity="center_vertical|left"

  5. Çok Merkezi: android:layout_gravity="center"

  6. Merkez Sağ: android:layout_gravity="center_vertical|right"

  7. Sol Alta: android:layout_gravity="bottom|left"

  8. Alt-Merkezi: android:layout_gravity="bottom|center_horizontal"

  9. Alt-Sağ: android:layout_gravity="bottom|right"

Umut bu yardımcı olur !

+1

Cevabınız için teşekkürler, "harita" büyük ölçüde yardımcı oldu! Yine de, 'android: gravity' özniteliğini tam olarak kullanmak üzere tasarlandığımı belirtmeliyim. 'TextView' seçeneğim, çeviricimin ArrayAdapter öğesi için öğe düzeni parametresi olarak gider; android: layout_gravity' herhangi bir değişiklik yapmadı. Bu aptal konumlandırma hatası dışında, çözüme yakındı, sen ve adamp beni işaret etti. Tekrar teşekkürler! – 87element

+0

Vay. Bu harika bir cevap. Cevabın benim için yardımcı oldu. –

2

Sadece başkasının benim kadar aptal olduğu durumda. Boşlukları çıkarmayı unutma. android:gravity="center_horizontal|bottom" ama android:gravity="center_horizontal | bottom" geçerli değil.

İlgili konular