所以我在 Android 中有一个布局,它是一个包含 ScrollView、LinearLayout、LinearLayout 的垂直 LinearLayout。
我让每个孩子大约占据屏幕的三分之一。当我拥有带有 ActionBar 的Holo或Holo.Light时,看起来与预期的一样:
但是,当我将 Theme 更改为 Holo.NoActionBar 或 Holo.Light.NoActionBar 时,出于某种原因,它完全忽略了我的 android:layout_weight,甚至我的 ScrollView。就像我滚动视图中的所有内容都不再折叠一样。然后看起来像这样:
为什么会这样?我不知道为什么。我什至在我的 styles.xml 中制作了一个自定义主题,但问题仍然存在。为什么 ScrollView 只有在我有 ActionBar 时才有效?
这是我的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingTop="10dp"
android:weightSum="100"
>
<ScrollView
android:layout_height="0dp"
android:layout_width="fill_parent"
android:layout_weight="30">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/tvEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/email" />
<EditText
android:id="@+id/etEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textNoSuggestions" />
.......................
</LinearLayout>
</ScrollView>
<LinearLayout
android:layout_height="0dp"
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_weight="40">
<Button
android:id="@+id/bSendEmail"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="@string/sendEmail" />
</LinearLayout>
<LinearLayout
android:layout_height="0dp"
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_weight="30">
<AnalogClock
android:id="@+id/analogClock1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
</LinearLayout>