【问题标题】:Android studio TextViews disappear with android_belowAndroid Studio TextViews 与 android_below 一起消失
【发布时间】:2019-03-07 05:01:49
【问题描述】:

我编写了一个 XML 脚本来将 Textviews 相互对齐,我在前几个 Textviews 中使用了android:Layout_below,它们相互对齐,但是当我将它添加到其他 Textviews 以进入其上方的 Textview 下方时,它们消失了离屏。这是我的代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorWhite"
    android:orientation="vertical"
    android:scaleX="1"
    android:scaleY="1">

    <!--This xml page shows the user their sensor value information-->
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true">

        <de.hdodenhof.circleimageview.CircleImageView
            android:id="@+id/imageview_account_profile"
            android:layout_width="125dp"
            android:layout_height="125dp"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:src="@drawable/profile"
            app:civ_border_color="#FFFFFF"
            app:civ_border_width="2dp" />

    </RelativeLayout>

    <TextView
        android:id="@+id/accountName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="137dp"
        android:text="TextView"
        android:visibility="visible" />

    <TextView
        android:id="@+id/kills"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="40dp"
        android:layout_marginTop="166dp"
        android:text="kills: "
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsFired"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/kills"
        android:layout_alignEnd="@+id/kills"
        android:layout_marginTop="7dp"
        android:layout_marginEnd="-58dp"
        android:singleLine="true"
        android:text="bullets fired:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsHit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/bulletsFired"
        android:layout_alignStart="@+id/bulletsFired"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="11dp"
        android:layout_marginBottom="227dp"
        android:text="bullets hit:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsMissed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="-80dp"

        android:layout_marginBottom="186dp"
        android:text="bullets missed:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/score"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="-18dp"

        android:layout_marginBottom="144dp"
        android:text="Score:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/hitAccuracy"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="14dp"
        android:layout_marginBottom="105dp"
        android:text="shot accuracy:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="-80dp"
        android:layout_marginBottom="64dp"
        android:text="Score per min:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/timePlayed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/score"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="-44dp"
        android:layout_marginBottom="21dp"
        android:text="Time played:"
        android:textSize="25sp" />


</RelativeLayout>

所以当我向 bulletsHit TextView 添加android:layout_below 标签时,它会消失。如果我尝试将它添加到它们之后,所有的 Textviews 也是如此。

【问题讨论】:

  • android:layout_below 哪个视图?
  • bulletsHit 的所有人都会遇到这种情况。例如,如果我输入android:layout_below="@id/bulletsHit" bulletsHit 将在屏幕外消失。那个下面的 Textviews 也会发生同样的情况

标签: android android-layout


【解决方案1】:

从bulletsHit及以下的所有视图中删除此属性:

android:layout_alignParentBottom="true"

然后添加到所有

android:layout_below=.....

同时删除任何:

android:layout_marginBottom=....

检查这个:

<!--This xml page shows the user their sensor value information-->
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true">

    <de.hdodenhof.circleimageview.CircleImageView
        android:id="@+id/imageview_account_profile"
        android:layout_width="125dp"
        android:layout_height="125dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:src="@drawable/profile"
        app:civ_border_color="#FFFFFF"
        app:civ_border_width="2dp" />

    </RelativeLayout>

    <TextView
        android:id="@+id/accountName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="137dp"
        android:text="TextView"
        android:visibility="visible" />

    <TextView
        android:id="@+id/kills"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="40dp"
        android:layout_marginTop="166dp"
        android:text="kills: "
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsFired"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/kills"
        android:layout_alignEnd="@+id/kills"
        android:layout_marginTop="7dp"
        android:layout_marginEnd="-58dp"
        android:singleLine="true"
        android:text="bullets fired:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsHit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/bulletsFired"
        android:layout_alignStart="@+id/bulletsFired"
        android:layout_marginStart="11dp"
        android:text="bullets hit:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/bulletsMissed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_below="@+id/bulletsHit"
        android:layout_marginEnd="-80dp"
        android:text="bullets missed:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/score"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_below="@+id/bulletsMissed"
        android:layout_marginEnd="-18dp"
        android:text="Score:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/hitAccuracy"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_marginStart="14dp"
        android:layout_below="@+id/score"
        android:text="shot accuracy:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/kills"
        android:layout_marginEnd="-80dp"
        android:layout_below="@+id/hitAccuracy"
        android:text="Score per min:"
        android:textSize="25sp" />

    <TextView
        android:id="@+id/timePlayed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/score"
        android:layout_marginEnd="-44dp"
        android:layout_below="@+id/textView8"
        android:text="Time played:"
        android:textSize="25sp" />
</RelativeLayout>

【讨论】:

  • 您好,除了 kills bulletsFired 和 bulletsHit 之外的所有 Textview 都在此之后不再显示
  • 查看我的编辑。你有奇怪的边距和负边距,为什么?
  • 看到我已经拿走了底部边距,现在它正在工作。我一定是忘了把页边距去掉
  • 如果没问题就好了。
  • 感谢您的帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-31
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 2014-05-11
相关资源
最近更新 更多