SAPUI5教程——ActionSheet的应用

前言

ActionSheet是一个点击弹出popover的基本效果,可以让用户执行一定操作事件,如下图:

这里写图片描述

定义controller

sap.ui.define(['sap/ui/core/Fragment','sap/ui/core/mvc/Controller'],
    function(Fragment, Controller) {
    "use strict";

    var CController = Controller.extend("richard.demo.ActionSheet.C", {
        handleOpen : function (oEvent) {
            var oButton = oEvent.getSource();

            // create action sheet only once
            if (!this._actionSheet) {
                this._actionSheet = sap.ui.xmlfragment(
                    "richard.demo.ActionSheet.ActionSheet",
                    this
                );
                this.getView().addDependent(this._actionSheet);
            }

            this._actionSheet.openBy(oButton);
        }
    });

    return CController;

});

代码中主要通过sap.ui.xmlfragment实例加载一个fragment,添加到当前view当中。并公国openBy执行打开的操作。

定义ActionSheetFragment

<core:FragmentDefinition
    xmlns="sap.m"
    xmlns:core="sap.ui.core">
    <ActionSheet
        title="Choose Your Action"
        showCancelButton="true"
        placement="Bottom">
        <buttons>
            <Button text="Reject" icon="sap-icon://decline" />
            <Button text="Accept" icon="sap-icon://accept" />
            <Button text="Email" icon="sap-icon://email" />
            <Button text="Forward" icon="sap-icon://forward" />
            <Button text="Delete" icon="sap-icon://delete" />
            <Button text="Other" />
        </buttons>
    </ActionSheet>
</core:FragmentDefinition>

fragment的定义可以通过core:FragmentDefinition来定义,已达到部分view的重用效果。

定义触发的按钮,打开actionsheet

<Button text="Open Action Sheet"
                press="handleOpen"
                class="sapUiSmallMarginBottom" />

这里主要是通过Button的press方法触发handleOpen,执行controler中的fragment加载操作,并打开。

这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天外野草

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值