排毒平面列表不滚动
Detox Flatlist not scrolling
我有一个这样的导航器结构:
stack
drawer
stack
tab
我的层次结构是:
view
view
flatlist
我想让我的平面列表向下滚动。您可以看到手指动画,但列表没有移动。您可以在这张 gif 中看到它:
Screen Recording 2018-03-16 at 11.30 p.m..gif
这是我的代码:
it('should have infinite scrolling', async () => {
await expect(element(by.id('NewsFeed.Scroller'))).toBeVisible();
await expect(element(by.id('NewsFeedScreen.ArticleListing-0'))).toExist();
await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toNotExist();
await element(by.id('NewsFeed.Scroller')).scroll(10000, 'down');
await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toExist();
});
我认为问题在于滚动操作是从屏幕底部开始的。当我自己尝试在那里启动滚动表单时,它也不起作用。我在 API 中没有看到任何允许我在该手势开始的位置设置偏移量的内容。查看 inspect 中的那个元素会发现它不在 Detox 开始其手势的区域:https://d3vv6lp55qjaqc.cloudfront.net/items/323C3D3U3y1Y2Z1B2L2J/Screen%20Shot%202018-03-16%20at%2023.47.48.png?X-CloudApp-Visitor-Id=2852073&v=31521c3c
在我们等待 https://github.com/wix/detox/issues/589 解决的过程中,我找到了一个足够好的解决方案。
await element(by.id('NewsFeedScreen.ArticleListing-0')).swipe('up', 'fast', 0.9);
结果是我正在寻找的行为,在我的列表中向下滚动
如果有人现在遇到这个问题 - 尝试使用 .scroll()
方法的 startPositionX
或 startPositionY
参数,例如:
await element(by.id('scrollView')).scroll(200, 'down', NaN, 0.5)
当我遇到同样的问题时,对我来说就像一个魅力。
我有一个这样的导航器结构:
stack
drawer
stack
tab
我的层次结构是:
view
view
flatlist
我想让我的平面列表向下滚动。您可以看到手指动画,但列表没有移动。您可以在这张 gif 中看到它:
Screen Recording 2018-03-16 at 11.30 p.m..gif这是我的代码:
it('should have infinite scrolling', async () => {
await expect(element(by.id('NewsFeed.Scroller'))).toBeVisible();
await expect(element(by.id('NewsFeedScreen.ArticleListing-0'))).toExist();
await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toNotExist();
await element(by.id('NewsFeed.Scroller')).scroll(10000, 'down');
await expect(element(by.id('NewsFeedScreen.ArticleListing-10'))).toExist();
});
我认为问题在于滚动操作是从屏幕底部开始的。当我自己尝试在那里启动滚动表单时,它也不起作用。我在 API 中没有看到任何允许我在该手势开始的位置设置偏移量的内容。查看 inspect 中的那个元素会发现它不在 Detox 开始其手势的区域:https://d3vv6lp55qjaqc.cloudfront.net/items/323C3D3U3y1Y2Z1B2L2J/Screen%20Shot%202018-03-16%20at%2023.47.48.png?X-CloudApp-Visitor-Id=2852073&v=31521c3c
在我们等待 https://github.com/wix/detox/issues/589 解决的过程中,我找到了一个足够好的解决方案。
await element(by.id('NewsFeedScreen.ArticleListing-0')).swipe('up', 'fast', 0.9);
结果是我正在寻找的行为,在我的列表中向下滚动
如果有人现在遇到这个问题 - 尝试使用 .scroll()
方法的 startPositionX
或 startPositionY
参数,例如:
await element(by.id('scrollView')).scroll(200, 'down', NaN, 0.5)
当我遇到同样的问题时,对我来说就像一个魅力。