【问题标题】:How to scroll all layout with listview如何使用列表视图滚动所有布局
【发布时间】:2019-10-31 21:36:07
【问题描述】:

我需要滚动所有视图,而不仅仅是列表视图。这只是列表视图滚动,我需要使用标题Screenshot 滚动。怎么做?我试过 NestedScroll 但它对我不起作用。当我设置固定高度但我不知道列表的最终大小时它起作用了。是否可以使用没有 java 的唯一 XML 来修复它?

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
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/drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:openDrawer="start">

<android.support.design.widget.CoordinatorLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"

    tools:context="com.example.wilshere.voicerecognitionactivity.VoiceRecognitionActivity">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

    </android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/CharacterGrayLight"
    android:orientation="vertical"
    >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="405dp">

        <LinearLayout
            android:layout_width="match_parent"
            android:background="@drawable/gradientbackground"
            android:layout_height="350dp"
            android:orientation="vertical">
            <ImageView
                android:layout_width="200dp"
                android:layout_height="200dp"
                android:layout_marginTop="20dp"
                android:layout_gravity="center_horizontal"
                android:src="@drawable/round_photo"></ImageView>
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="10dp"
                android:text="Your name"
                android:textColor="#fff"
                android:textStyle="bold"
                android:textSize="21sp">
            </TextView>
        </LinearLayout>
        <android.support.v7.widget.CardView
            android:layout_width="350dp"
            android:layout_height="120dp"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="275dp"
            >
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="horizontal"
                android:weightSum="3">
                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:orientation="vertical"
                    android:gravity="center"
                    android:layout_height="match_parent">
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Рейтинг:"
                        android:textAlignment="center"
                        android:textSize="18sp"></TextView>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="30.5"
                        android:textStyle="bold"
                        android:textSize="20sp"
                        android:paddingTop="10dp"
                        android:textColor="@color/CharacterStartBlue"></TextView>
                </LinearLayout>
                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:orientation="vertical"
                    android:gravity="center"
                    android:layout_height="match_parent">
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Выполнено задач:"
                        android:textAlignment="center"
                        android:textSize="18sp"></TextView>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="125"
                        android:textStyle="bold"
                        android:textSize="20sp"
                        android:paddingTop="10dp"
                        android:textColor="@color/CharacterStartBlue"></TextView>
                </LinearLayout>
                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:orientation="vertical"
                    android:gravity="center"
                    android:layout_height="match_parent">
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Возраст:"
                        android:textAlignment="center"
                        android:textSize="18sp"></TextView>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="21"
                        android:textStyle="bold"
                        android:textSize="20sp"
                        android:paddingTop="10dp"
                        android:textColor="@color/CharacterStartBlue"></TextView>
                </LinearLayout>
            </LinearLayout>
        </android.support.v7.widget.CardView>
    </RelativeLayout>

    <ListView
        android:id="@+id/sportsList"
    android:layout_width="match_parent"
    android:layout_height="0dp"
        android:layout_weight="1"
    android:entries="@array/sports_array"
    />

</LinearLayout>



</android.support.v4.widget.DrawerLayout>

【问题讨论】:

标签: java android xml android-studio


【解决方案1】:

您可能正在寻找RecyclerView + CollapsingToolbarLayout? 更多信息请查看this

<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- Scrollable view here -->

  <com.google.android.material.appbar.AppBarLayout
      android:layout_width="match_parent"
      android:layout_height="@dimen/tall_toolbar_height">

    <com.google.android.material.appbar.CollapsingToolbarLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:contentScrim="?attr/colorPrimary"
        app:expandedTitleGravity="top"
        app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">

      <androidx.appcompat.widget.Toolbar
          android:layout_width="match_parent"
          android:layout_height="?attr/actionBarSize"
          app:layout_collapseMode="pin"/>
    </com.google.android.material.appbar.CollapsingToolbarLayout>
  </com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多