CoordinatorLayout内にnestedScrollviewがあります。 これで、nestedScrollview内に5-6のビューがあり、ネットワーク経由で利用可能なデータに応じて視認性が変わります。 問題は、scrollviewは常に同じ高さ(すべての5-6ビューの合計)をとり、ビューの表示を非表示にすると空白が残ります。スクロールビューの下部に空白がないようにスクロールビューの高さを再調整する方法を教えてください。Android Scrollview高さ動的調整
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:id="@+id/MyAppbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapse_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:collapsedTitleGravity="center_horizontal"
app:expandedTitleGravity="center_horizontal"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<!--Some content here-->
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/nested_scroll_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
<include
android:id="@+id/profile_extra_details"
layout="@layout/profile_extra_details_layout" />
<LinearLayout
android:id="@+id/see_project_listing_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
<include layout="@layout/divider" />
<ViewSwitcher
android:id="@+id/work_switcher"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<include
android:id="@+id/see_project_listing"
layout="@layout/photos_with_heading" />
<TextView
android:id="@+id/txt_no_work_found"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="center"
android:text="There are no Design Boards"
/>
</ViewSwitcher>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
これはNestedScrollviewです。以下はprofile_extra_details_layoutです。これは、ネットワークからのデータの可用性に基づいて可視性が制御されるレイアウトと、プロファイルが表示されているユーザーのタイプです。
<?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="wrap_content"
android:orientation="vertical">
<include layout="@layout/divider" />
<TextView
android:id="@+id/user_description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:visibility="gone" />
<LinearLayout
android:id="@+id/location_buget_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:orientation="horizontal"
android:visibility="visible">
<LinearLayout
android:id="@+id/ll_budget_yearEstb"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/img_budget_yearEstb"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_gravity="center_horizontal"
android:src="@drawable/id_proejct_budget" />
<TextView
android:id="@+id/txt_budget_yearEstb"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_location"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_gravity="center_horizontal"
android:padding="5dp"
android:src="@drawable/id_project_city" />
<TextView
android:id="@+id/location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:padding="5dp"
android:text="Mumbai,India"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/individual_firm_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/image_size_beside_text"
android:layout_height="@dimen/image_size_beside_text"
android:src="@drawable/id_expert_firm_ind" />
<TextView
android:id="@+id/individual_firm_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Firm/Individual" />
</LinearLayout>
<LinearLayout
android:id="@+id/awards_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/image_size_beside_text"
android:layout_height="@dimen/image_size_beside_text"
android:src="@drawable/id_expert_awards" />
<TextView
android:id="@+id/awards_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
</LinearLayout>
<LinearLayout
android:id="@+id/web_add_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/image_size_beside_text"
android:layout_height="@dimen/image_size_beside_text"
android:src="@drawable/id_seller_web" />
<TextView
android:id="@+id/web_add_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Abc.xyz" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_location_ho"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:visibility="gone">
<ImageView
android:layout_width="@dimen/image_size_beside_text"
android:layout_height="@dimen/image_size_beside_text"
android:src="@drawable/id_project_city" />
<TextView
android:id="@+id/location_ho_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Abc.xyz" />
</LinearLayout>
</LinearLayout>
私はもっと詳細な説明が必要な場合は教えてください。
コードや画像の構造や何もせずに、私たちはあなたを助けることはできません。だからこそ、人々はこれを気にしていません。 – Cyrex
これを試してください。しかし、これがあなたの場合の修正であるかどうかは保証されません。 http://www.dreamincode.net/forums/topic/130521-android-part-iii-dynamic-layouts/ – Cyrex