Articles of nestedscrollview

滚动到不带工具栏的折叠视图

我正在做一个类似于最近的android状态栏的布局。 我有两个Views内的容器。 ViewPager和RecyclerView 。 默认的行为应该是当我滚动RecyclerView ,我希望ViewPager大小减less,反之亦然。 逻辑: viewPagerMaxHeight = 200; if scrollTop is ViewPager.height > viewPagerMaxHeight? YES: Prevent Scroll and Decrease ViewPager size apropriatry No: Scroll RecyclerView if scrollBottom did we scroll to position 0? YES: Start increasing ViewPager size No: Scroll RecyclerView 几个注意事项: – RecyclerView包含各种大小的项目。 – 有时项目被删除和添加 – 这是一个简单的RecyclerView,不像在通知中,他们互相崩溃。 我可以自己构build大部分逻辑,但是我无法为RecyclerView创build一个适当的侦听器,它将返回滚动的方向和数量。 防止RecyclerView滚动是一个奖金 编辑: 我在github上做了一个例子 v.setOnScrollChangeListener(new […]

FrameLayout与NestedScrollView的高度不匹配

我有一个NestedScrollView内的FragmeLayout,如 <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000"> 但是FrameLayout并没有填充NestedScrollView的高度。 我该如何解决这个问题?

我可以创build一个像这样的嵌套滚动布局吗?

我认为这可以通过NestedScrollingChild NestedScrollingParent来实现。 但是我真的不能理解他们,谁能帮助我! 产品经理坚持devise。 ScrollView包含一个LinearLayout ,一个“TabLayout”和一个ViewPager 。 ViewPager包含2个包含RecyclerView fragment或者仅包含2个RecyclerView 。 当ScrollView滚动到底部时, RecyclerView可以滚动到底部。 当RecyclerView滚动到Top时, ScrollView可以滚动到Top。 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" /> <TextView android:layout_width="match_parent" android:layout_height="1000dp" /> <TableLayout android:layout_width="match_parent" android:layout_height="60dp"></TableLayout> <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v4.view.ViewPager> </LinearLayout> </ScrollView>

Recycler视图+ View Pager +嵌套的ScrollView + CoordinatorLayout

我正在处理一个布局,使得持有包含回收视图的片段的ViewPager被放置在协调器布局的nester scrollView中。 问题是一旦我点击回收站视图的嵌套滚动视图不工作.. 有没有什么可能的方式来有这样的滚动布局 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent"> <NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:id="@+id/lin" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <ViewPager android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout> <NestedScrollView> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/transparent" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <FrameLayout android:layout_width="match_parent" android:layout_height="190dp" android:minHeight="190dp" app:layout_collapseMode="parallax" > <ViewFlipper android:id="@+id/view_flipper" android:layout_width="match_parent" android:layout_height="match_parent"> <!–<ImageView android:id="@+id/backdrop" android:layout_width="match_parent" android:layout_height="match_parent" android:adjustViewBounds="true" android:fitsSystemWindows="true" android:scaleType="centerCrop"/>–> […]

webview高度在nestedScrollView中无限增长

这是我的布局。 当我加载google.com时,webview的高度不断增长。 webview的onSizeChange函数不断被调用,我可以看到webview不断扩大。 我已经尝试了22.2.1和23.1.0的devise和appcompat库,没有效果。 任何解决scheme : – | <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/black"> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="fill_vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <com.example.ajay.scrollabletoolbar.MyWebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true"/> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBarLayout android:id="@+id/appbarlayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true"> <android.support.v7.widget.Toolbar android:id="@+id/restricted_browser_toolbar" android:layout_width="match_parent" android:layout_height="?actionBarSize" android:background="@color/colorPrimary" app:layout_scrollFlags="scroll|enterAlways"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FFFFFF" android:descendantFocusability="beforeDescendants" android:focusableInTouchMode="true"> <EditText android:id="@+id/current_url" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerVertical="true" android:backgroundTint="@android:color/darker_gray" android:dropDownAnchor="@+id/restricted_browser_toolbar" android:hint="hint hint" android:imeOptions="actionGo|flagNoExtractUi" android:inputType="textNoSuggestions|textUri" android:paddingBottom="8dp" android:paddingEnd="8dp" […]

在NestedScrollView Android 2.3或更低版本中滚动WebView

我在我的android应用程序中添加了Toolbar , Tablayout和Viewpager 。 TabLayout有三个Tabs ,每个都显示一个WebView 。 当用户在WebView向下/向上滚动时,我将WebView放置在NestedScrollView以隐藏/显示Toolbar 。 Toolbar隐藏在Android 3.0或更高版本中。 但不幸的是,在Android 2.3或更低版本中, WebView不会首先滚动。 我必须滑动到另一个选项卡,当我再次回到第一个Tab WebView开始滚动。 我想要的是? 我希望WebView应该在Android 2.3或更低版本中滚动而没有任何问题。 我的WebView <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:isScrollContainer="false" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingTop="1dp"> <WebView android:id="@+id/webviewtool" android:layout_width="match_parent" android:layout_height="fill_parent" android:numColumns="1" android:scrollbars="none" android:focusableInTouchMode="false" android:focusable="false" android:background="#FFFFFF" /> </LinearLayout> </android.support.v4.widget.NestedScrollView>

android – CoordinatorLayout / NestedScrollView /隐藏 – 显示工具栏/问题与WebView

我有一个问题: <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/coordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:id="@+id/appBarLayout" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout> 当我在webview中滚动时,工具栏被隐藏或显示(完美!),但加载/定位网页存在问题。 例如,如果我滚动到页面的中间位置,并且点击一个链接,则将加载的新页面也将位于页面的中间位置而不是顶部。 就像滚动条不是从一个页面移动到另一个页面一样。 如果我添加到NestedScrollView: android:fillViewport="true" 一切工作与网页视图(页面加载和出现良好,虽然从顶部开始),但我失去了隐藏/显示与工具栏:( 你对这个问题有什么想法吗? 预先感谢您的帮助 :) (有关信息:Androiddevise支持库:23.0.1) 烨

NestedScrollView和Horizo​​ntal RecyclerView平滑滚动

我有一个垂直的nestedscrollview,其中包含一堆水平布局pipe理器设置的recyclerview。 这个想法与新的谷歌播放商店看起来很相似。 我能够使其function,但它不是一帆风顺的。 以下是问题: 1)水平回收者视图项目在大部分时间都不能拦截触摸事件,即使我点击它也是如此。 滚动视图似乎优先于大部分的议案。 对我来说很难挂钩水平运动。 这个用户体验是令人沮丧的,因为我需要尝试几次才能工作。 如果您查看Play商店,则可以很好地拦截触摸事件,并且效果不错。 我在游戏商店注意到他们设置的方式是在一个垂直回收站内部进行许多水平的回收站查看。 没有滚动视图。 2)水平回收站的高度必须手动设置,并且没有简单的方法来计算子元素的高度。 这是我正在使用的布局: <android.support.v4.widget.NestedScrollView android:id="@+id/scroll" android:layout_width="match_parent" android:layout_height="match_parent" android:clipToPadding="false" android:background="@color/dark_bgd" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:id="@+id/main_content_container" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="gone" tools:visibility="gone" android:orientation="vertical"> <android.support.v7.widget.RecyclerView android:id="@+id/starring_list" android:paddingLeft="@dimen/spacing_major" android:paddingRight="@dimen/spacing_major" android:layout_width="match_parent" android:layout_height="180dp" /> 这个用户界面模式是非常基本的,很可能用在许多不同的应用程序。 我已经阅读了许多SO,在那里,ppl说把一个列表放在一个列表中是一个坏主意,但是它是一个非常常见和现代的用户界面模式,用在所有的地方。思考netflix像一系列水平滚动列表一个垂直列表。 没有一个顺利的方法来完成这个? 来自商店的示例图片:

折叠工具栏和nestedscrollview不能平滑滚动

嵌套的滚动视图在向下滚动时平滑滚动,但向上滚动时很慢。滚动时混乱的工具栏(带有图像视图和框架布局)不呈现其内容(保持空白)。 我试图在折叠工具栏中的每一个标志。 <android.support.design.widget.CoordinatorLayout 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/coordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/backdrop" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="100dp" android:fitsSystemWindows="true" android:scaleType="centerCrop" android:src="@drawable/pic" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.5" app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"/> <include android:id="@+id/framelayout" layout="@layout/header_layout" app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed" android:minHeight="100dp"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <!– Your Scrollable View –> <android.support.v4.widget.NestedScrollView android:id="@+id/nested" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="fill_vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" […]

NestedScrollview不会从顶部开始

我有一个NestedScrollview Recyclerview ..一切工作正常,除了一个thig。 我在NestedScrollview中总共有三个视图。前两个是LinearLayout,然后是Recyclerview。 当我运行我的应用程序活动不显示顶部两个布局,它从Recyclerview顶部开始。 它如何显示我的布局: 它如何显示: 我在viewpager下加载这个enite布局,我的viewpager是Coordinator Layout的一个子项。 <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.NestedScrollView android:id="@+id/scrollView" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/home_layout_background"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <com.daimajia.slider.library.SliderLayout android:id="@+id/image_slider" android:layout_width="match_parent" android:layout_height="@dimen/image_slider_height" android:layout_marginTop="@dimen/image_slider_top_margin" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/popular_fragment_side_padding" android:layout_marginRight="@dimen/popular_fragment_side_padding" android:layout_marginTop="@dimen/popular_fragment_side_padding" android:orientation="horizontal" android:weightSum="4"> <RelativeLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1"> <RelativeLayout android:id="@+id/free_delivery" android:layout_width="76dp" android:layout_height="76dp" android:layout_centerInParent="true" android:background="@color/white"> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true"> <ImageView […]