标签: android-scroll

ScrollView内的Recyclerview无法顺利滚动

对于我的应用程序,我使用的是一个RecyclerView内部ScrollView,其RecyclerView高度基于其内容使用此库.滚动工作正在进行,但滚动时滚动不顺畅RecyclerView.当我滚动ScrollView它自己时,它滚动顺畅.

我用来定义的代码RecyclerView:

LinearLayoutManager friendsLayoutManager = new LinearLayoutManager(getActivity().getApplicationContext(), android.support.v7.widget.LinearLayoutManager.VERTICAL, false);
mFriendsListView.setLayoutManager(friendsLayoutManager);
mFriendsListView.addItemDecoration(new DividerItemDecoration(getActivity().getApplicationContext(), null));
Run Code Online (Sandbox Code Playgroud)

RecyclerViewScrollView:

<android.support.v7.widget.RecyclerView
    android:layout_marginTop="10dp"
    android:layout_marginBottom="10dp"
    android:id="@+id/friendsList"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud)

android android-scrollview android-scroll android-recyclerview

169
推荐指数
8
解决办法
9万
查看次数

在webview中禁用滚动?

到目前为止,我只是一名iPhone开发人员,现在我决定给Android一个旋转.我在Android上无法弄清楚的是如何以编程方式阻止滚动WebView

类似于iPhone预防onTouchMove活动的东西会很棒!

android android-webview android-scrollbar android-scroll

81
推荐指数
6
解决办法
13万
查看次数

如何进行新的PlayStore视差效果

有谁知道如何实现新的视差滚动效果 - 当您在PlayStore上打开应用程序并尝试向下滚动时,您可以看到效果,内容覆盖顶部图像.我怎样才能做到这一点?

在此输入图像描述

android android-animation android-layout android-scroll material-design

47
推荐指数
3
解决办法
6万
查看次数

Android View.scrollTo(x,y)在哪里滚动到?

scrollTo(int x, int y) 说:

x要滚动到的x位置

y要滚动到的y位置

onScrollChanged(int l, int t, int oldl, int oldt) 说:

l当前水平滚动原点.

t当前垂直滚动原点.

我想知道什么,在任何地方都找不到,x,y在哪里?左上方?中央?我尝试了一些测试但无法弄明白.

android android-view android-scroll

23
推荐指数
1
解决办法
2万
查看次数

如何在Webview中向下滚动时隐藏ActionBar /工具栏

在Google Chrome和Play商店中.应用程序可以在滚动时隐藏操作栏,并允许用户方便地浏览.请帮我这样做.

我使用onTouchListener进行webview它不起作用.

mWebView.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        getSupportActionBar().show();
                            break;
                    case MotionEvent.ACTION_UP:
                        getSupportActionBar().hide();
                            break;
                    default: break;
                }
                return false;
            }
        });
Run Code Online (Sandbox Code Playgroud)

提前致谢

android android-webview android-scrollview android-scroll

17
推荐指数
2
解决办法
2万
查看次数

始终调用Gridview onScroll方法,无需用户滚动

我有一个自定义的gridview,我正在检查循环方法以查找列表的结尾.如果滚动到达列表的末尾,它将再次向列表中添加一些元素.

gridview.setOnScrollListener(new OnScrollListener() {

        @Override
        public void onScrollStateChanged(AbsListView arg0, int arg1) {

        }

        @Override
        public void onScroll(AbsListView arg0, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
            // TODO Auto-generated method stub

            int lastInScreen = firstVisibleItem + visibleItemCount;     


            //is the bottom item visible & not loading more already ? Load more !
            if((lastInScreen == totalItemCount) && (!loadingMore))
            {   
                new LoadDataTask().execute();

            } 
        }
    });
Run Code Online (Sandbox Code Playgroud)

这是我的异步任务类..

    private class LoadDataTask extends AsyncTask<Void, Void, Void> {

    @Override
    protected Void doInBackground(Void... params) {

        if (isCancelled()) {
            return …
Run Code Online (Sandbox Code Playgroud)

android-gridview android-scroll

14
推荐指数
1
解决办法
3381
查看次数

如何将ListView滚动到底部?

我虽然这将是一个简单的任务,但显然没有办法将listview滚动到底部.我发现的所有解决方案都使用setSelection(lastItem)方法的变体,它只将选择设置为最后一项,但不会滚动到它的底部.

在我的情况下,我有一个空的列表视图(有一个长的空视图标题集),我想滚动到它的底部.

那么,有没有办法做到这一点?

编辑:

所以对于那些感兴趣的人来说,工作解决方案是:

getListView().setSelectionFromTop(0, -mHeader.getHeight());
Run Code Online (Sandbox Code Playgroud)

getListView().scrollTo(mOffset)
Run Code Online (Sandbox Code Playgroud)

这也有效,右偏移(根据当前滚动位置计算),但可能会给你一些意想不到的结果.

android android-listview android-scroll

14
推荐指数
4
解决办法
3万
查看次数

当onLongPress或缓慢滚动时,微调器滚动到顶部

我有一个带有LOOONG项目列表的微调器.我注意到的是,每当我尝试慢慢滚动微调器项目时,它突然让我回到微调器选择的顶部.我只是使用带有简单ArrayAdapter的标准Spinner.这不是一个真正的问题,但是当用户慢慢滚动时,选择会一直重置到顶部,这有点令人讨厌.您可以推送列表,但如果您慢慢滚动,将手指放在屏幕上,它会向上滚动到列表顶部.

还有其他人遇到过这个问题吗?它为什么会发生?有没有办法"解决"这个问题?

注意:我遇到的问题仅限于Spinner.

android spinner gesture android-scroll

14
推荐指数
1
解决办法
1218
查看次数

如何完全阻止TextView滚动?

我有一个带有大量文本的TextView.此TextView已maxLines设置,因此它仅显示前8行左右.我还有一个"阅读更多"按钮,所以我自己处理扩展TextView.

我的问题是,有时TextView会滚动一点(一次只有半行),即使我从未指定任何滚动条.这个问题变得更糟,因为TextView在ListView中,所以当用户滚动主ListView时,TextView有时会滚动一点,如下所示:

blahblah

如何阻止TextView滚动?

android textview android-layout android-scroll

12
推荐指数
1
解决办法
5802
查看次数

如果第一个项目被移动,如何防止 LazyColumn 自动滚动

我使用 Jetpack Compose UI 构建一个简单的 TODO 应用程序。这个想法是有一个可以选中或取消选中的任务列表,并且选中的任务应该位于列表的末尾。

一切工作正常,除了当我检查屏幕上的第一个可见项目时,它会随着滚动位置向下移动。

我相信这与 有关LazyListState,有这样的功能:

/**
 * When the user provided custom keys for the items we can try to detect when there were
 * items added or removed before our current first visible item and keep this item
 * as the first visible one even given that its index has been changed.
 */
internal fun updateScrollPositionIfTheFirstItemWasMoved(itemsProvider: LazyListItemsProvider) {
    scrollPosition.updateScrollPositionIfTheFirstItemWasMoved(itemsProvider)
}
Run Code Online (Sandbox Code Playgroud)

所以我想禁用这种行为,但我没有找到方法。


下面是重现问题的简单代码和截屏视频。当我尝试检查“项目 0”、“项目 1”和“项目 4”时,此截屏视频中出现问题,但在检查“项目 7”和“项目 8”时,它按我预期的方式工作。

如果您选中或取消选中当前第一个可见项目的任何项目,不仅该项目位于整个列表中的第一个项目,其行为也相同。

class MainActivity : ComponentActivity() …
Run Code Online (Sandbox Code Playgroud)

android android-scroll android-jetpack-compose android-jetpack-compose-lazy-column

10
推荐指数
1
解决办法
1545
查看次数