1. ホーム
  2. android

[解決済み] ScrollViewの中にConstraintLayoutを入れることは可能ですか?

2022-05-10 09:32:04

質問

最近、Android Studio 2.2で新しいConstraintLayoutが追加され、設計がとても簡単になりました。 RelativeLayoutLinearlayout を使用することはできません。 ScrollView を囲むように ConstraintLayout . これは可能ですか?もし可能なら、どのように?

すなわち

<ScrollView 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:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp">
        
        <android.support.constraint.ConstraintLayout
            android:id="@+id/constraintLayout"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            tools:layout_editor_absoluteX="0dp"
            tools:layout_editor_absoluteY="0dp">
            
            <!-- Have whatever children you want inside -->
            
        </android.support.constraint.ConstraintLayout>
        
</ScrollView>

どのように解決するのですか?

Android Studio 2.2 Preview 2 (constraintlayout 1.0.0-alpha2) で、ScrollViews 内の ConstraintLayout にバグがあり、修正されたそうです。

新しいアップデート(Preview 2)はこちらのリンクからご確認ください。 はScrollViewとRecycleViewの内部で正しく機能します。

解決策1:

解決策としては android:fillViewport="true" の上に ScrollView

解決策2

<ブロッククオート

使用方法 NestedScrollView の代わりに ScrollViewandroid:fillViewport="true"

編集 - 09/16/20:

現在、ConstraintLayoutの高さをwrap_contentに設定してScrollViewを使用するのがより一般的で、それは非常によく機能します。