这是一个例子。出于某种原因,按钮中似乎存在隐式填充。我尝试在根级别RelativeLayout中将padding,minWidth和minHeight设置为0dp,但由于某种原因,填充仍然存在。我也尝试将这些属性放在每个子视图中,就像所有按钮和TextView一样,但仍然没有。知道这里发生了什么吗?
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="0dp"
android:minHeight="0dp"
android:minWidth="0dp"
android:background="@drawable/splash_screen"
tools:context=".MainActivity">
<!--
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="30dp">
<ImageView
android:id="@+id/navdy_logo"
android:src="@drawable/ic_navdy_logo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="false"
android:paddingLeft="58dp"
android:paddingRight="58dp"
android:contentDescription="navdy logo">
</ImageView>
<!-- android:scaleType="fitXY" -->
<!-- android:adjustViewBounds="true" -->
<Space
android:id="@+id/space"
android:layout_below="@+id/navdy_logo"
android:layout_height="55dp"
android:layout_width="fill_parent">
</Space>
<TextView
android:id="@+id/titleText"
android:layout_below="@+id/space"
android:layout_width="wrap_content"
android:layout_height="73dp"
android:gravity="center"
android:textSize="30sp"
android:fontFamily="sans-serif-light"
android:textColor="#fff"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Design to change your driving experience"
android:layout_centerHorizontal="true" />
<Space
android:id="@+id/space2"
android:layout_below="@+id/titleText"
android:layout_height="32dp"
android:layout_width="fill_parent" >
</Space>
<Button
android:id="@+id/create_account_button"
android:layout_below="@+id/space2"
android:layout_centerHorizontal="true"
android:layout_height="50dp"
android:layout_width="283dp"
android:text="@string/create_account"
android:textSize="18sp"
android:textColor="#fff"
android:backgroundTint="@color/md_blue_500">
</Button>
<Space
android:id="@+id/space3"
android:layout_below="@+id/create_account_button"
android:layout_height="16dp"
android:layout_width="fill_parent">
</Space>
<Button
android:id="@+id/learn_more_button"
android:layout_height="46dp"
android:layout_width="279dp"
android:scaleType="fitXY"
android:textSize="18sp"
android:background="@drawable/button_border_white"
android:text="@string/learn_more"
android:textColor="#fff"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:layout_below="@+id/space3"
android:layout_alignEnd="@+id/create_account_button">
</Button>
<Space
android:id="@+id/space4"
android:layout_below="@+id/learn_more_button"
android:layout_height="24dp"
android:layout_width="fill_parent">
</Space>
<RelativeLayout
android:layout_below="@+id/space4"
android:layout_width="270dp"
android:layout_height="20dp"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:layout_centerHorizontal="true"
android:id="@+id/bottom_text_for_signup">
<TextView
android:id="@+id/already_have_an_account_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_marginRight="15dp"
android:textSize="17sp"
android:fontFamily="sans-serif-light"
android:textColor="#fff"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/already_have_account"
android:layout_centerHorizontal="true" />
<TextView
android:id="@+id/already_have_account_sign_in"
android:text="@string/sign_in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:textSize="17sp"
android:fontFamily="sans-serif-light"
android:textColor="@color/md_blue_500"
android:textAppearance="?android:attr/textAppearanceLarge" />
</RelativeLayout>
</RelativeLayout>
</RelativeLayout>
我的TextViews上似乎还有顶部和底部填充:
编辑:
Anand Singh在评论中提到了dimens.xml。我实际上不知道这个资源做了什么,并决定检查出来。这是代码:
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>
但是,我从来没有在我的布局中引用它,所以我不明白它是如何被使用的?而且,即使我在dimens.xml文件中注释掉这些样式,我仍然会遇到相同的填充问题。
答案 0 :(得分:1)
问题现在是填充或边距,但是可以使用Button。您可以使用9-patch创建自己的Button,而不是设置负值: http://developer.android.com/tools/help/draw9patch.html