我正在开发一个我希望有进度条和文本视图的应用。事情是文本视图应该有不同的背景。当我使用android:layout_width="match_parent"
时,它会在textview的两侧留下空间。当我们有白色背景时,它没关系,但是当我们放置不同的背景时,它看起来不太好。我怎样才能做到这一点?
简而言之,当我放置match_parent
时,我得到以下视图(第一张图片),但我希望页面看起来像第二张图片中的页面。
activity_main.xml中
<?xml version="1.0" encoding="utf-8"?>
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="senti.com.freelaneprogress.MainActivity">
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="300dp"
android:layout_height="300dp"
android:layout_centerInParent="true"
android:max="100"
android:progress="40"
android:rotation="270"
android:progressDrawable="@drawable/circular"/>
<TextView
android:id="@+id/eta"
android:background="#00000000"
android:layout_height="100dp"
android:layout_width="150dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="1.3in"/>
<TextView
android:layout_width="150dp"
android:layout_height="50dp"
android:layout_marginTop="2in"
android:layout_centerHorizontal="true"/>
<TextView
android:background="@drawable/textviewbg"
android:layout_width="match_parent"
android:layout_height="30pt"
android:contextClickable="false"
android:layout_alignParentBottom="true"
android:id="@+id/textView" />
</RelativeLayout>
答案 0 :(得分:1)
问题出在这里
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
textview匹配是父级。问题是,由于填充,父级不匹配整个父视图。 尝试删除填充,它应该工作。
答案 1 :(得分:1)
为RelativeLayout视图设置paddingLeft,paddingRight和paddingBottom为0dp。换句话说,
<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:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="senti.com.freelaneprogress.MainActivity">
...
...
</RelativeLayout>
这是达到理想结果所需的最低要求。但是如果你想要绝对,你也可以将RelativeLayout的paddingTop设置为0dp。
答案 2 :(得分:0)
删除相对布局的所有填充。如果你真的想要,你可以将它提供给进度条。
<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"
tools:context="senti.com.freelaneprogress.MainActivity">
将padding设置为relative会给出您不想要的容器空间