Articles of nestedscrollview

NestedScrollView在Nougat上阻止bug(API 25)

我在Nexus 5x(7.1.2)和Google Pixel(7.1.1)上使用NestedScrollView时遇到了一个奇怪的问题。 在其他OS版本上它可以正常工作。 举起animation有时会在举起手指后立即停止。 它停滞不前,接下来的几次飞行也可能停止。 为了重现它,你需要上下几次投掷。 在日志中,这些flings在速度,方向等方面看起来几乎相同,所以我找不到这个bug的真正原因。 NestedScrollView也不一定需要在CoordinatorLayout ,它也可以没有NestedScrollingChild 。 例如,使用以下NestedScrollView子项之一可以重现此错误: 1)使用TextViews填充LinearLayout 2) WebView 3)使用RecyclerViews填充LinearLayout 。 我知道CoordinatorLayout RecyclerView和Behaviors可能存在的问题,但它没有关系。 所以请不要提及任何 recyclerView.getLayoutManager().setAutoMeasureEnabled(true); recyclerView.setNestedScrollingEnabled(false); 或类似的东西。 代码示例:

NestedScrollView在Recyclerviewresize时滚动到顶部

我有一个NestedScrollView包含一个LinearLayout和一个RecyclerView(都在RelativeLayout内)。 将数据加载到RecyclerView后,我需要以编程方式更改它的高度,如下所示: RelativeLayout.LayoutParams lay_params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 50 + ((int) (baskets.length * getResources().getDimension(R.dimen.list_height_small)))); lay_params.addRule(RelativeLayout.BELOW, lay_total.getId()); recyclerView.setLayoutParams(lay_params); recyclerView.setAdapter(new ListBasketAmountAdapter(baskets)); 问题是当数据加载完NestedScrollView时,滚动会自动滚动到RecyclerView的顶部,将LinearLayout隐藏在它上面。 有任何想法吗? 谢谢。

折叠工具栏和嵌套滚动视图不能平滑滚动

嵌套滚动视图在向下滚动时平滑滚动,但在向上滚动时它是缓慢的。向上滚动时的工具栏(带有图像视图和framelayout)不会呈现其内容(保持空白)。 我在折叠工具栏中尝试了每个标志。

无法滚动AppBarLayout并平滑地折叠工具栏和NestedScrollView

我正在开发一个Android应用程序,我在其中使用CoordinatorLayout , AppBarLayout和CollapsingToolbarLayout来使用折叠工具栏function。 我在布局中使用NestedScrollView以相同的布局展开和折叠AppBarLayout 。 当我试图从屏幕中心向上滚动然后它不起作用但是当我尝试从屏幕右上角向上滚动屏幕时它会顺利滚动。 下面提到的是我的xml文件 layout.xml > > > > > > 理想的结果是,当我尝试从屏幕中心向上滚动时,它应该像我从移动设备的右上角向上滚动一样起作用。 请观看下面提到的video,以便更清楚地查看问题 https://www.dropbox.com/s/gscfc8vfc7kkpxp/device-2015-12-30-160119.mp4?dl=0

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

我正在做一个类似于最近的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>