我希望我的ui可以滚动。我有一个LinearLayout,其中嵌套了ListView和另一个Linear布局。以下是我的代码
<?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:orientation="vertical">
<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="10"
android:divider="@null"
android:dividerHeight="0dp"
android:paddingTop="10dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:layout_weight="5"
android:background="@drawable/border"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:layout_marginTop="3dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Vessal Name:" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Maize" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ETD: " />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="09 OCT 2014" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ETA: " />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="89.Oct 2034" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Revised ETA" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="9 Oct 2014" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Notes/ Remarks" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nice delivery" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
问题是最后出现的少数文本视图在ui中不可见。我怎样才能看到它?
答案 0 :(得分:0)
使用scrollview,您的问题将得到解决
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<!-- everything you already have -->
</ScrollView>
答案 1 :(得分:0)
根据Docs
可以通过滚动的视图层次结构的布局容器 用户,允许它大于物理显示。一个ScrollView 是一个FrameLayout,意味着你应该在其中放置一个子包含 滚动的全部内容;这个孩子本身可能是一个布局 具有复杂的对象层次结构的管理器。经常是孩子 used是一个垂直方向的LinearLayout,呈现一个 用户可以滚动的顶级项目的垂直数组。
你永远不应该使用带有ListView的ScrollView,因为ListView 负责自己的垂直滚动。最重要的是,这样做 击败ListView中的所有重要优化以进行处理 使用大型列表,因为它有效地强制ListView显示 它的整个项目列表,用于填充由提供的无限容器 滚动型。
TextView类也负责自己的滚动,所以没有 需要ScrollView,但可以将两者结合使用 在更大的容器中实现文本视图的效果。
您的xml
就像
<ScrollView>
<LinearLayout>
<EditText/>
<TextView/>
</LinearLayout>
</ScrollView>
注意: ScrollView