在滚动内滚动的 listView 是一个好习惯吗?

发布于 2024-12-10 15:27:32 字数 179 浏览 0 评论 0原文

对于列表视图中的某些项目,使用另一个滚动滚动的列表视图是一个好习惯吗? (在卷轴内滚动)。

根据用户体验,你对此有何看法?我没有在真实设备上进行测试。 有没有任何应用程序遵循同样的事情?

编辑

我不问如何。我已经讨厌了!但我问是否建议将 v-scroll 放在另一个 v-scroll 中?

Is it a Good practice to have a list view with scrolling with another scroll for some items inside the listview ? (scroll inside a scroll) .

What do you think about that according UX. I didn't test it on a real device.
Does there any application follow the same thing ?

edit

I don't ask how. I already hate it ! But I ask whether it is advisable to have v-scroll inside another v-scroll ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

温柔嚣张 2024-12-17 15:27:32

如果内部元素的滚动与列表视图一样是垂直的,则您无法拥有它。

但是您可以将 Horizo​​ntalScrollView 作为列表视图的子视图。希望这有帮助..

In case the scrolling of the inside elements is vertical as the listview you can't have it.

But you can have a HorizontalScrollView as child of your listview. Hope this helps..

夏の忆 2024-12-17 15:27:32

我认为大多数时候不鼓励将 listview 放入 scrollview 中,因为这两个组件都能够处理滚动。

允许在 listview 中水平滚动会带来奇怪的用户体验,所以我不确定它是否可取。

I think putting a listview inside a scrollview is discouraged most of the time because both component are able to handle scrolling.

Allowing horizontal scrolling in a listview gives a weird user experience so i'm not sure it is advisable anyway.

终陌 2024-12-17 15:27:32

您可以在垂直滚动内拥有可滚动的 listView。使用以下代码并享受吧!

private int listViewTouchAction;
private void setListViewScrollable(final ListView list) {
        list.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                listViewTouchAction = event.getAction();
                if (listViewTouchAction == MotionEvent.ACTION_MOVE)
                {
                    list.scrollBy(0, 1);
                }
                return false;
            }
        });
        list.setOnScrollListener(new OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view,
                    int scrollState) {
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem,
                    int visibleItemCount, int totalItemCount) {
                if (listViewTouchAction == MotionEvent.ACTION_MOVE)
                {
                    list.scrollBy(0, -1);
                }
            }
        });
    }

listViewTouchAction 是一个全局整数值。

You can have scrollable listView inside of a vertical scroll. use the following code and enjoy!

private int listViewTouchAction;
private void setListViewScrollable(final ListView list) {
        list.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                listViewTouchAction = event.getAction();
                if (listViewTouchAction == MotionEvent.ACTION_MOVE)
                {
                    list.scrollBy(0, 1);
                }
                return false;
            }
        });
        list.setOnScrollListener(new OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view,
                    int scrollState) {
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem,
                    int visibleItemCount, int totalItemCount) {
                if (listViewTouchAction == MotionEvent.ACTION_MOVE)
                {
                    list.scrollBy(0, -1);
                }
            }
        });
    }

listViewTouchAction is a global integer value.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文