Я использую схему координатора на моей странице активности. В этом есть ListView под панелью приложений. Но он не работает, когда я использую ListView вместо NestedScrollView. И если я поставлю ListView внутри NestedScrollView, ListView не будет расширятьсяListView не расширяется внутри NestedScrollView
ответ
Для правильной работы необходимо выполнить прокрутку для реализации NestedScrollingChild. Такими классами являются NestedScrollView
и RecyclerView
.
Сказать, что коротко - просто использовать RecyclerView
для содержания прокрутки, и он будет работать правильно :)
P.S. В качестве примечания я не вижу причины, по которой вы бы использовали ListView
. Я знаю, что это привычка, и ее легче настроить (потому что вы делали это много раз), но использование RecyclerView
- это рекомендуемый способ.
вы можете исправить это, когда вы добавите addtribute
android:fillViewport="true"
в android.support.v4.widget.NestedScrollView
:). Это мой код.
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:fillViewport="true"
>
<ListView
android:id="@+id/list_myContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical"
>
</ListView>
</android.support.v4.widget.NestedScrollView>
это не сработало для меня. –
Не работал и для меня. Содержимое ListView не прокручивается. –
android: fillViewport = "true" сделал магию +1 –
на леденец года вы можете использовать
setNestedScrollingEnabled(true);
на вашем ListView/GridView/ScrollableView. Из документации
Включения или отключение вложенной прокрутки для этого вида
если вам нужна обратная совместимость с более старой версией ОС вам придется использовать RecyclerView
. Вы можете читать далее here
Редактировать. ViewCompat
имеет статический метод setNestedScrollingEnabled(View, boolean)
. Например.
ViewCompat.setNestedScrollingEnabled(listView, true)
благодаря @Dogcat
за указание его
Этот ответ определенно должен быть одобрен и даже задан как правильный ответ. Я закончил тем, что изменил свою реализацию на «RecyclerView», потому что я только прочитал ответ, который был принят в качестве ответа. Да, конечно, я мог бы прочитать все ответы, но первый работал для меня - если бы просто хлопот, чтобы изменить реализацию ;-) – Darwind
@Dogcat спасибо за указатель – Blackbelt
Вы только что спасли меня! И да, это должен быть принятый ответ. – liltof
android:fillViewport="true"
Просто поместите внутри вас NestedScrollView
Tag
Пожалуйста, объясните, как ваш ответ решает проблему, это поможет всем понять ваше решение с большей ясностью и для дальнейшего использования. – Aziz
@ На самом деле, я тоже столкнулся с такой же проблемой, и это сработало. при установке «fillViewport» true это растягивает высоту контента до границ окна просмотра, – Shivam
Вы не можете прокрутить ListView внутри nestedscrollview.Use Recyclerview с nestedscrollview
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorAccent"
android:orientation="horizontal">
<de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/profile_image"
android:layout_width="76dp"
android:layout_height="76dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="24dp"
android:layout_marginStart="24dp"
android:src="@drawable/profile"
app:border_color="#FF000000" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="20dp"
android:layout_toRightOf="@+id/profile_image"
android:gravity="center_vertical"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="IRFAN QURESHI"
android:textSize="20sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="[email protected]" />
</LinearLayout>
<ImageView
android:layout_marginLeft="50dp"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_delete_black" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@color/colorPrimary"
android:gravity="center_horizontal"
android:padding="30dp">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:background="@drawable/login_email_bg_round_rect_shape"
android:gravity="center_horizontal"
android:padding="10dp"
android:text="POST A QUERY" />
</LinearLayout>
<!--<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</ListView>-->
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="vertical" />
<RelativeLayout
android:background="@color/colorAccent"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:padding="8dp"
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SIGN OUT" />
<ImageView
android:paddingTop="5dp"
android:layout_marginRight="40dp"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_delete_black" />
</RelativeLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
</android.support.v4.widget.NestedScrollView>
Просто добавьте android: nestedScrollingEnabled = "true" в свой NestedScrollView.
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none"
android:nestedScrollingEnabled="true">
<ListView
android:id="@+id/list_myContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical">
</ListView>
Этот поддерживается только в API 21 и выше. К сожалению, я строю за 16 минимум. –
это то, что работает для меня.
android:fillViewport="true"
установить на NestedScrollView
добавить один элемент макета, как ребенок к NestedScrollView
.В моем случае LinearLayout
, а затем установить android:nestedScrollingEnabled="true"
на ListView
Сделать ListView
дитя LinearLayout
Хорошо идти
Ниже код работал для меня:
ViewCompat.setNestedScrollingEnabled (ListView, правда);
Ваш ListView должен быть внутри NestedScrollView
- 1. ListView не прокручивается внутри NestedScrollView
- 2. ListView не прокручивается внутри NestedScrollView в android
- 3. NestedScrollView внутри ViewPager внутри NestedScrollView: Innermost NestedScrollView не прокручивается
- 4. match_parent не работает для ListView, если ListView находится внутри NestedScrollView
- 5. Как я могу иметь ListView внутри NestedScrollView
- 6. RecycleView внутри NestedScrollView с match_parent
- 7. ExpandableList не расширяется внутри ScrollView
- 8. Recyclerview внутри nestedscrollview
- 9. RecyclerView ScrollListener внутри NestedScrollView
- 10. RecyclerView внутри NestedScrollView Android
- 11. Recycler Просмотр внутри NestedScrollView
- 12. Содержимое NestedScrollView не отображается внутри КоординаторLayout
- 13. NestedScrollView не броситься с Recyclerview внутри
- 14. NestedScrollview внутри просмотра Recycler, а не прокрутки
- 15. Автоматическая прокрутка NestedScrollView внутри CoordinatorLayout не работает
- 16. Recycle View не работает внутри ScrollView/NestedScrollView
- 17. Recylerview не виден внутри Scrollview или nestedScrollview
- 18. WebView внутри NestedScrollView нельзя прокручивать
- 19. Recyclerview внутри NestedScrollView - Знать позицию
- 20. View.LAYER_TYPE_HARDWARE сбой WebView внутри NestedScrollView
- 21. RecyclerView внутри NestedScrollView, загрузить Imageview
- 22. webview внутри NestedScrollView внутри КоординаторLayout не показывает контент состязательно
- 23. Установить представление пользовательского списка внутри NestedScrollView
- 24. Как создать ListView внутри CoordinatorLayout?
- 25. div не расширяется с содержимым внутри него ..?
- 26. RecyclerView не расширяется внутри RelativeLayout и ScrollView
- 27. Почему тильда (~) не расширяется внутри двойных кавычек?
- 28. Экстранс gridpanel не расширяется горизонтально внутри tabPanel
- 29. Предотвращение прокрутки NestedScrollView вверх автоматически
- 30. ExpandableListView вообще не расширяется
http://stackoverflow.com/a/6211286 – Sree