[文章]HarmonyOS应用开发-Jsmenu菜单组件

阅读量0
0
3
1.png
  
说明
该组件从API version 4开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
提供菜单组件,作为临时性弹出窗口,用于展示用户可执行的操作。
子组件
<option>子组件。
属性
除支持通用属性外,还支持如下属性:
名称
默认值
必填
target
-
type
click
title
-
样式
仅支持如下样式:
名称
类型
默认值
必填
描述
text-color
<color>
-
设置菜单的文本颜色。
font-size
<length>
30px
设置菜单的文本尺寸。
allow-scale
boolean
true
设置菜单的文本尺寸是否跟随系统设置字体缩放尺寸进行放大缩小。
说明
如果在config描述文件中针对ability配置了fontSize的config-changes标签,则应用不会重启而直接生效。
letter-spacing
<length>
0
设置菜单的字符间距。
font-style
string
normal
设置菜单的字体样式。见text组件font-style的样式属性
font-weight
number | string
normal
设置菜单的字体粗细。见text组件font-weight的样式属性
font-family
string
sans-serif
设置菜单的字体列表,用逗号分隔,每个字体用字体名或者字体族名设置。列表中第一个系统中存在的或者通过自定义字体指定的字体,会被选中作为文本的字体。
事件
仅支持如下事件:
名称
参数
描述
selected
{ value:value }
菜单中某个值被点击选中时触发,返回的value值为option组件的value属性。
cancel
-
用户取消。
方法
仅支持如下方法。
名称
参数
描述
show
{ x:x, y:y }
显示menu菜单。(x, y)指定菜单弹窗位置。其中x表示距离可见区域左边沿的 X 轴坐标,不包含任何滚动偏移,y表示距离可见区域上边沿的 Y 轴坐标,不包含任何滚动偏移以及状态栏。菜单优先显示在弹窗位置右下角,当右边可视空间不足时会适当左移,当下方空间不足时会适当上移。
示例:
  1. <!-- xxx.hml -->
  2. <div class="container">
  3.     <button onclick="onTextClick" class="title-text">Show popup menu.</button>
  4.     <menu id="apiMenu" onselected="onMenuSelected">
  5.         <option value="Item1">选项1</option>
  6.         <option value="Item2">选项2</option>
  7.         <option value="Item3">选项3</option>
  8.     </menu>
  9. </div>
复制代码
  1. /* xxx.css */
  2. .container {
  3.     flex-direction: column;
  4.     align-items: center;
  5.     justify-content: center;
  6.     width: 100%;
  7.     height: 100%;
  8. }
  9. .title-text {
  10.     width: 200px;
  11.     height: 30px;
  12. }
复制代码
  1. // xxx.js
  2. import prompt from '@system.prompt';
  3. export default {
  4.     onMenuSelected(e) {
  5.         prompt.showToast({
  6.             message: e.value
  7.         })
  8.     },
  9.     onTextClick() {
  10.         this.$element("apiMenu").show({x:280,y:400});
  11.     }
  12. }
复制代码
效果图

附件:
   
menu菜单组件.rar
(790.08 KB, 下载次数: 0)


回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友