android: 为什么文本视图不会堆叠在 FrameLayout 中的按钮上
android: Why won't a textview stack over a button in a FrameLayout
几乎每篇关于分层小部件主题的文章都指向 FrameLayouts,它们应该根据 XML 中出现的顺序堆叠。为了测试,我在 xml 中放置了一个按钮和一个 TextView,希望看到 TextView 与按钮重叠。按钮放在 textview 之前还是之后都没有关系,按钮总是在最上面。谁能看出我做错了什么?
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.jdot.testloadingfragments.MainActivity">
<Button
android:id="@+id/btn_test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text=" "
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="----------------------------------------------------------"/>
</FrameLayout>
将 elevation
添加到 textView 将使其显示在 Button
上方
例如
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.jdot.testloadingfragments.MainActivity">
<Button
android:id="@+id/btn_test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text=" "/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:elevation="2dp"
android:text="----------------------------------------------------------"/>
</FrameLayout>
更多信息在这里:
FrameLayout 最适合用于显示单个项目。
如果您想在框架布局中显示多个子视图,请尝试对每个子视图使用 android:layout_gravity
属性以正确定位它们而不重叠,如果您希望视图彼此重叠,请使用高度。
了解更多信息
访问 https://developer.android.com/reference/android/widget/FrameLayout.html
几乎每篇关于分层小部件主题的文章都指向 FrameLayouts,它们应该根据 XML 中出现的顺序堆叠。为了测试,我在 xml 中放置了一个按钮和一个 TextView,希望看到 TextView 与按钮重叠。按钮放在 textview 之前还是之后都没有关系,按钮总是在最上面。谁能看出我做错了什么?
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.jdot.testloadingfragments.MainActivity">
<Button
android:id="@+id/btn_test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text=" "
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="----------------------------------------------------------"/>
</FrameLayout>
将 elevation
添加到 textView 将使其显示在 Button
例如
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.jdot.testloadingfragments.MainActivity">
<Button
android:id="@+id/btn_test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:text=" "/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:elevation="2dp"
android:text="----------------------------------------------------------"/>
</FrameLayout>
更多信息在这里:
FrameLayout 最适合用于显示单个项目。
如果您想在框架布局中显示多个子视图,请尝试对每个子视图使用 android:layout_gravity
属性以正确定位它们而不重叠,如果您希望视图彼此重叠,请使用高度。
了解更多信息 访问 https://developer.android.com/reference/android/widget/FrameLayout.html