Dondurma Sandviçinde Holo Dialog temasını kullanan etkinliklerle (@android:style/Theme.Holo.Dialog
) biraz garip bir sorunla karşılaştım.ICS Holo Dialog temasının nesi var?
Düzenlerini görmezden geliyor ve XML düzenlerinden düzen genişliği ve yüksekliği yerine tüm ekranı dolduruyorlar. Aynı düzenler Honeycomb'da beklendiği gibi çalışıyor, ancak Ice Cream Sandwich'de değil.
Örnek:
doğru şekilde (Petek)
Her iki cihaz uygulamanın aynı sürümünü çalıştıran (Dondurma Sandviç) hatalı bir şekilde, ve aynı düzeni kullanıyorlar. İşte söz konusu düzen:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout1"
android:layout_width="940dp"
android:layout_height="600dp"
android:layout_margin="10dp" >
<GridView
android:id="@+id/gridView1"
android:layout_width="940dp"
android:layout_height="600dp"
android:horizontalSpacing="10dp"
android:numColumns="3"
android:smoothScrollbar="true"
android:stretchMode="columnWidth"
android:verticalSpacing="10dp" >
</GridView>
</LinearLayout>
Bunun nasıl çözülebileceğine dair herhangi bir fikir var mı? Benzer bir sorun, yükseklik ve genişlik için match_parent
etiketini tamamen yok sayan ICS tabanlı Galaxy Nexus'umda gerçekleşir. İletişim teması ICS'de bozuk mu?
Güncelleme: Ben biraz daha test yaptık ve bunun "doğru" bir görünüm üretecek genişlikte veya daha az 894dp gibi görünüyor, ama ben genişliği ayarlarsanız 895dp veya
daha, bu yanlış bir görünüm olacaksın. Emülatör aynı şekilde davranıyor. Bu yüzden sonunda iletişim tema düştü ve yerine tam genişlikli standart tema düzenini kullanılan, bunun için bir cevap kendim bulamadık
Bu garip görünüyor. Bu karanlıkta bir çekimdir, ancak bazen Uygulama Hedefini değiştirdikten sonra uygulamanızda tuhaf grafik hataları yaşayacağım. Neden olduğu hakkında hiçbir fikrim yok ama projeyi temizlemek onları her zaman düzeltir. Dediğim gibi, karanlıkta vuruldu, ama bu kadar basit olabilir. – adneal
Teşekkürler, sadece bunu denedim, ancak herhangi bir etkisi yok gibi görünüyor. Sadece sorumu tekrar güncelledim - 894 ile 895 dp arasında bir genişlik gibi görünüyor. –
Ekran fotoğraflarınız iki ayrı cihaz kullanılarak çekiliyor mu? Gönderiniz, bu davranışın her zaman HoneyComb üzerinde doğru bir şekilde çalıştığını, ancak ICS'de olmadığını varsayar, ancak yaşadığınız sorunun tamamen ekranın boyutuna bağlı olması olası mıdır? Değilse, o zaman aynı ekran boyutu ile iki AVD (bir çalışan 3.0 ve başka çalışan 4.0) oluşturmayı düşünebilirsiniz ve sorunun aslında Android SDK sürüm numarasına bağlı olup olmadığını belirlemek için iki ile test edebilirsiniz. –