如何在框架布局内设置位置?

时间:2019-01-31 18:27:59

标签: java android android-studio

我有一个图像的的FrameLayout内的文本我使用填充移动文本,但是当我运行仿真器的TextView的留在corne,如何可以纠正这种?

<FrameLayout
    android:id="@+id/ruleta6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="39dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintStart_toStartOf="@+id/imageView17"
    app:layout_constraintTop_toBottomOf="@+id/imageView18">

    <ImageView
        android:id="@+id/image_roulette"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:adjustViewBounds="true"
        android:clickable="true"
        android:onClick="actionRoulette"
        app:srcCompat="@drawable/ruletaestrella"
        tools:layout_editor_absoluteX="25dp"
        tools:layout_editor_absoluteY="330dp" />

    <TextView
        android:id="@+id/castigo1a"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:layout_marginLeft="40dp"
        android:layout_marginTop="20dp"
        android:rotation="20"
        android:text="TextView"
        android:textColor="#fc0000"
        android:textSize="20dp" />
</FrameLayout>

2 个答案:

答案 0 :(得分:1)

您的FrameLayout的高度和宽度为0dp。您应同时将其设置为match_parent或大于0dp。然后你可以使用layout_gravitygravity标签在您的TextView推着,中心它FrameLayout等对于工作寿您的FrameLayout必须大于TextView


示例:

<FrameLayout
    android:layout_width="300dp"
    android:layout_height="200dp"
    android:gravity="center">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="TextView"/>

</FrameLayout>

注意android:gravity设置“布局”子级的位置,android:layout_gravity设置“布局/视图”在其父级中的位置。


祝你好运:)

答案 1 :(得分:0)

尝试修复以下错误。 -FrameLayout的width和Height都设置为0 dp,它应该是MATCH_PARENT,WRAP_CONTENT或某个固定值 ** 0 dp的宽度或高度只能在LinearLayout中使用,并且仅用于宽度或高度且具有定义的权重。