【发布时间】:2013-06-27 07:53:09
【问题描述】:
所以我有一个带有 LinearLayout 的 ScrollView。 似乎当我尝试滚动到线性布局的底部时,底部~5 倾角被切断(即底部边距) 我认为这可能与我的线性布局的 5dip 边距有关?
这里是activity_create_account.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:background="@drawable/grey"
android:orientation="vertical"
android:padding="0dp"
tools:context=".Login" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="100"
android:orientation="vertical">
<!-- BEGIN HEADER -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:background="@drawable/titlebar"
android:orientation="horizontal"
android:padding="8dip" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="0dp"
android:text="create account"
android:textColor="#FFFFFF"
android:textSize="32sp"
android:textStyle="bold"
android:typeface="sans" />
</LinearLayout>
<!-- END HEADER -->
<!-- BEGIN BODY -->
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="top"
android:orientation="vertical">
<LinearLayout
android:id="@+id/innerLinearLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="10dip"
android:background="@drawable/rounded_white"
android:orientation="vertical"
android:padding="5dip" >
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/etCreateEmail"
android:hint="Email"
android:layout_weight="1"
android:paddingTop="8dip"
android:paddingBottom="8dip"
android:paddingRight="8dip"
android:paddingLeft="8dip"
android:layout_marginBottom="4dip"
android:layout_marginTop="5dip"/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/etCreateEmail"
android:hint="Email"
android:layout_weight="1"
android:paddingTop="8dip"
android:paddingBottom="8dip"
android:paddingRight="8dip"
android:paddingLeft="8dip"
android:layout_marginBottom="4dip"
android:layout_marginTop="5dip"/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/etCreateEmail"
android:hint="Email"
android:layout_weight="1"
android:paddingTop="8dip"
android:paddingBottom="8dip"
android:paddingRight="8dip"
android:paddingLeft="8dip"
android:layout_marginBottom="4dip"
android:layout_marginTop="5dip"/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/etCreateEmail"
android:hint="Email"
android:layout_weight="1"
android:paddingTop="8dip"
android:paddingBottom="8dip"
android:paddingRight="8dip"
android:paddingLeft="8dip"
android:layout_marginBottom="4dip"
android:layout_marginTop="5dip"/>
<EditText
android:id="@+id/etChooseUsername"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dip"
android:layout_weight="1"
android:ems="10"
android:hint="Choose a username"
android:inputType="text"
android:paddingBottom="8dip"
android:paddingLeft="8dip"
android:paddingRight="8dip"
android:paddingTop="8dip" />
<EditText
android:id="@+id/etChoosePassword"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dip"
android:layout_weight="1"
android:ems="10"
android:hint="Choose a password"
android:inputType="textPassword"
android:paddingBottom="8dip"
android:paddingLeft="8dip"
android:paddingRight="8dip"
android:paddingTop="8dip" />
<EditText
android:id="@+id/etRetypePassword"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dip"
android:layout_weight="1"
android:ems="10"
android:hint="Re-type password"
android:inputType="textPassword"
android:paddingBottom="8dip"
android:paddingLeft="8dip"
android:paddingRight="8dip"
android:paddingTop="8dip" />
<Button
android:id="@+id/bCreateAccountConfirm"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_weight="1"
android:background="@drawable/button_selector"
android:padding="0dip"
android:text="Create Account"
android:textColor="#ffffff"
android:textStyle="bold"
android:typeface="sans" />
</LinearLayout>
</ScrollView>
<!-- END BODY -->
这是我尝试一直向下滚动时的样子(按钮下方应该有一个细长的白色部分,然后是一个细长的灰色边缘部分)
【问题讨论】:
-
不要将
android:layout_margin="10dip"放在android:id="@+id/innerLinearLayout"上,而是将android:padding="10dip"放在ScrollView上 -
@bogdan 当我在 ScrollView 上添加填充时,它仍然会切断我内部布局的底部(并且无论滚动到哪里都会在屏幕底部留下难看的 10dip 宽的灰色部分)
-
我可能读错了这个问题,忘记了我所说的关于滚动视图的 10dp 填充的更改,sry。您希望“创建帐户”按钮在底部有一个小边距,所以在
android:id="@+id/bCreateAccountConfirm"上放置一个android:layout_marginBottom="10dp" -
在我的应用程序中,我在 LinearLayout 中设置了 margintop 并且存在同样的问题。然后我设置了paddingTop,就可以了。我认为这是一个错误,因为 margintop 使布局完全向下移动!
标签: android android-scrollview