自动滚动到底部

问题描述 投票:1回答:2

我正在使用聊天屏幕进行应用程序。但正如普通屏幕一样,它开始从上到下滚动。但它应该是从底部到顶部。该应用程序位于Telerik Nativescript平台中。

VIE W上。 XML

<ScrollView row="0" col="0">  
    <StackLayout class="history-content-area">
        <Repeater items="{{messageHistory}}">
            <Repeater.itemTemplate>
                <StackLayout>
                    <!-- ITEMS GO HERE -->
                </StackLayout>
            </Repeater.itemTemplate>
        </Repeater>
    </StackLayout>
</ScrollView>

我在上面的代码中需要帮助如何在页面加载时自动滚动到底部?如果您需要javascript代码,请告诉我们。

提前致谢。

javascript xml telerik hybrid-mobile-app nativescript
2个回答
3
投票

在ScrollView上,您可以使用scrollToVerticalOffset,您可以在其中传递偏移量以滚动到。

例如:view.xml

<ScrollView row="0" col="0" id="myScroller">  
    <StackLayout class="history-content-area">
        <Repeater items="{{messageHistory}}">
            <Repeater.itemTemplate>
                <StackLayout>
                    <!-- ITEMS GO HERE -->
                </StackLayout>
            </Repeater.itemTemplate>
        </Repeater>
    </StackLayout>
</ScrollView>

view.js

mScroller = page.getViewById("myScroller");

var offset = mScroller.scrollableHeight; // get the current scroll height
mScroller.scrollToVerticalOffset(offset, false); // scroll to the bottom

0
投票

假设你的ScrollView的id为'id-scroller'。然后在你的View.js中你做:

let scroller = page.getViewById('id-scroller');

setTimeout(function() {
  scroller.scrollToVerticalOffset(scroller.scrollableHeight, true);
}, 1);
© www.soinside.com 2019 - 2024. All rights reserved.