首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何通过代码跳转到移动设备上的另一个拆分窗格?

如何通过代码跳转到移动设备上的另一个拆分窗格?
EN

Stack Overflow用户
提问于 2018-10-29 13:49:53
回答 1查看 109关注 0票数 0

我有一个sap.ui.layout.ResponsiveSplitter,如下所示:

目标是,当我按跳转按钮时,它应该跳到第二个拆分窗格:

意见如下:

代码语言:javascript
运行
复制
<mvc:View controllerName="sap.ui.layout.sample.ResponsiveSplitter.C" xmlns:l="sap.ui.layout" xmlns:mvc="sap.ui.core.mvc"
    xmlns:core="sap.ui.core" xmlns:m="sap.m" height="100%">
    <l:ResponsiveSplitter defaultPane="Detail">
        <l:PaneContainer>
            <l:SplitPane requiredParentWidth="500" id="Selection">
                <m:Panel height="100%">
                    <m:Label text="Selection"/>
                    <m:Button text="Jump" press="onPress"/>
                </m:Panel>
                <l:layoutData>
                    <l:SplitterLayoutData size="20%"/>
                </l:layoutData>
            </l:SplitPane>
            <l:SplitPane requiredParentWidth="500" id="Detail">
                <m:Panel height="100%">
                    <m:Label text="Detail"/>
                </m:Panel>
            </l:SplitPane>
        </l:PaneContainer>
    </l:ResponsiveSplitter>
</mvc:View>

和JavaScript代码:

代码语言:javascript
运行
复制
sap.ui.define([
        'jquery.sap.global',
        'sap/ui/core/mvc/Controller',
        'sap/ui/model/json/JSONModel'
    ], function(jQuery, Controller, JSONModel) {
    "use strict";

    var ResponsiveSplitterController = Controller.extend("sap.ui.layout.sample.ResponsiveSplitter.C", {

        onInit : function () {
        },

        onPress: function() {

        }

    });

    return ResponsiveSplitterController;

});

我怎么才能拿到呢?

EN

回答 1

Stack Overflow用户

发布于 2018-10-29 21:03:53

没有公开的方法来做你想做的事。

但是,ResponsiveSplitter控件中有一个私有方法:

代码语言:javascript
运行
复制
/**
 * Sets the indexed page to visible and changes the selected button in the paginator
 * @param {int} iPageIndex
 * @private
 */
ResponsiveSplitter.prototype._activatePage = function (iPageIndex) {
    var $PaginatorButtons = this.$().find(".sapUiResponsiveSplitterPaginatorButton"),
        $OldSelectedButton = this.$().find(".sapUiResponsiveSplitterPaginatorSelectedButton"),
        iOldActivePage = $PaginatorButtons.index($OldSelectedButton),
        aPages = this.getAggregation("_pages") || [];

    aPages[iOldActivePage] && aPages[iOldActivePage].setVisible(false);
    aPages[iPageIndex] && aPages[iPageIndex].setVisible(true);
    $OldSelectedButton.removeClass("sapUiResponsiveSplitterPaginatorSelectedButton");
    $PaginatorButtons.eq(iPageIndex).addClass("sapUiResponsiveSplitterPaginatorSelectedButton");
    $OldSelectedButton.attr("aria-checked", false);
    $PaginatorButtons.eq(iPageIndex).attr("aria-checked", true);
};

通常,我们不应该调用内部方法,因为这些方法不能保证在整个框架版本中保持一致。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53046938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档