Bir var LinearLayout
içeride a ScrollView
sahiptir android:layout_height="fill_parent"
, ancak tam yüksekliğe genişletmek vermez ScrollView
. Düzenim şuna benzer:
level layout layout_width layout_height
1 LinearLayout fill_parent fill_parent
2 LinearLayout fill_parent wrap_content
3 (some irrelevant stuff)
2 ScrollView fill_parent fill_parent <-- this expands full height
3 LinearLayout fill_parent fill_parent <-- this does not (has orientation=vertical)
(following stuff probably are irrelevant, but just to be sure:)
4 TextView fill_parent fill_parent
4 LinearLayout fill_parent wrap_content
Eclipse in'de LinearLayout
tam yüksekliğini genişletmediğini görebiliyorum , eğer (Anahat panelinde) seçersem, ekranı aşağıya dolduran kırmızı bir kenarlıkla vurgulanır, ancak vurgusunu seçtiğimde ekranın altına doğru genişlemez. Bunu nasıl alabilirim?ScrollView
Android Layout Editor
ScrollView
LinearLayout
Elde etmeye çalıştığım etki biraz metin ve altında bir düğme olması ( LinearLayout
4. seviye içinde sadece bir düğme var). Metin bir kaydırma çubuğuna ihtiyaç duyacak kadar büyük olabilir, bu durumda kullanıcının düğmeyi görmek için aşağı kaydırmasını istiyorum. Metin bir kaydırma çubuğu için yeterince büyük değilse LinearLayout
, düğmeyi içeren ekranın altına yapışmasını istiyorum .
İlk başta tam XML'i yayınlamamam gerektiğini düşündüm, çünkü bir soruda büyük bir kod parçası görmek genellikle bir dönüş. Ancak, gerekli olabilir gibi görünüyor, işte tam düzen.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:id="@+id/video_layout"
android:focusable="true"
style="@style/VideoLayout">
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:foreground="@android:drawable/ic_media_play"
android:foregroundGravity="center">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/video_thumb"
android:padding="5dip"
android:background="#454545"/>
</FrameLayout>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusable="true"
style="@style/VideoTitle"
android:id="@+id/video_title"
android:layout_gravity="center"
android:layout_weight="1"/>
</LinearLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1">
<!-- this ScrollView expands the full height of the screen.
However, the next LinearLayout does not expand the full height of the ScrollView -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:layout_gravity="fill"
android:orientation="vertical"
android:id="@+id/info_layout">
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/info_body"
style="@style/InfoText"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
style="@android:style/ButtonBar">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:text="@string/button_readmore"
android:id="@+id/btn_read_more"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>
Şu anda android:layout_gravity="bottom"
sorunlu olarak başvurdum LinearLayout
, bu da düğmenin ne olursa olsun ekranın altına yapışmasını sağlıyor. Ama bu aynı zamanda metnin ekranın alt kısmına yapışmasını sağlar, ki bu tam olarak peşimde değildi.
Güncelleme: , çizik olduğunu android:layout_gravity="bottom"
yapar ScrollView
yapamaz için, iyi, kaydırma. Diğer fikirler?
android:weight
.