android - 如何将 ScrollView 添加到约束布局?
问题描述
我对编码很陌生,我在 Udacity 学习 Android Basics。我有一个包含各种 TextViews 和 ImageViews 的约束布局,需要为分配添加滚动条。我尝试在布局之外添加滚动视图,这导致应用程序崩溃,然后在布局中将其他视图作为约束布局内滚动视图的子级,但出现错误,指出滚动只能有一个子级看法。这是为什么?如何添加滚动视图?
`<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical" >
<ScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fillViewport="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Hello World"
android:textSize="25sp"
android:textColor="#990099" />
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textSize="25sp"
android:textColor="#990099"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textSize="25sp"
android:textColor="#990099"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textSize="25sp"
android:textColor="#990099"/>
</ScrollView>
</LinearLayout>
`
更新我试过这个,但应用程序崩溃了。
解决方案
使用 aScrollView
时,它只能有一个孩子。您通常会想要使用LinearLayout
,那是您放置实际内容的地方。
<ScrollView>
<LinearLayout>
<!-- Your Content -->
</LinearLayout>
</ScrollView>
这将提供ScrollView
滚动所需的知识。只需确保设置orientation
您的LinearLayout
,例如vertical
.
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="16dp"
android:paddingRight="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Hello World"
android:textColor="#990099"
android:textSize="25sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textColor="#990099"
android:textSize="25sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textColor="#990099"
android:textSize="25sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="100dp"
android:text="Words"
android:textColor="#990099"
android:textSize="25sp" />
</LinearLayout>
</ScrollView>
推荐阅读
- google-cloud-platform - 区域“projects/xxxx/zones/us-west3-a”没有足够的资源来满足请求。尝试其他区域,或稍后再试
- c++ - Leetcode 问题 489. Robot Room Cleaner - 为什么我的解决方案不起作用
- selection - 我们可以在 getSelection 方法 Javascript 中传递数据吗?
- python - django.db 连接如何通过 Psycopg2 传递原始 SQL 查询?
- html - 部分标签上方不需要的空间
- css - 在 Angular 9 应用程序中,应该更喜欢什么;全局样式或组件级样式
- json - 循环遍历 json 文件并将值检索到 bash 变量中
- node.js - 来自 node.js 服务器数据的客户端 D3 折线图
- python - 高斯 Siedel 不收敛
- python - 如何修复 PermissionError: [Errno 13] Permission denied in python?(win10)