首页 > 其他分享 >【鸿蒙应用】List、ListItem和ListItemGroup组件

【鸿蒙应用】List、ListItem和ListItemGroup组件

时间:2024-09-14 15:54:52浏览次数:3  
标签:info console title List item ListItem ListItemGroup 组件 projects


List组件是一个列表组件,包含一系列相同宽度的列表,适合连续、多行呈现同类数据的,比如图片。

ListItem组件是用来展示列表具体项的 item ;ListItemGroup组件是用来展示列表 item 分组的,这两个组件必须是配合 List 组件来使用。

比如:

interface ItemType {
  title: string;
  projects: string[]
}

@Entry
@Component
struct ToDoList {
  @State title: string = '';
  private timetableListItemGroup: ItemType[] = [
    {
      title: "星期一",
      projects: ["语文", "数学"]
    }, {
    title: "星期二",
    projects: ["语文", "数学"]
  }, {
    title: "星期三",
    projects: ["语文", "数学"]
  }, {
    title: "星期四",
    projects: ["语文", "数学"]
  }, {
    title: "星期五",
    projects: ["语文", "数学"]
  },
  ];

  onPageShow() {
    console.info('Index onPageShow');
  }

  onPageHide() {
    console.info('Index onPageHide');
  }

  onBackPress() {
    console.info('Index onBackPress');
    return true // 返回true表示页面自己处理返回逻辑,不进行页面路由;返回false表示使用默认的路由返回逻辑,不设置返回值按照false处理
  }

  aboutToAppear() {
    console.info('MyComponent aboutToAppear');
  }

  onDidBuild() {
    console.info('MyComponent onDidBuild');
  }

  aboutToDisappear() {
    console.info('MyComponent aboutToDisappear');
  }

  build() {
    Column() {
      List({ space: 2 }) {
        ForEach(this.timetableListItemGroup, (item: ItemType) => {
          ListItemGroup() {
            ForEach(item.projects, (project: string) => {
              ListItem() {
                Text(project)
                  .width("100%")
                  .height("30")
                  .fontSize(20)
                  .textAlign(TextAlign.Center)
              }
            }, (item:string) => item)
          }
          .borderRadius(10)
          .divider({strokeWidth:1,color:0xDCDCDC})
          .margin({
            bottom:10
          })
          .border({width:1,color:"blue"})
        })
      }
    }
    .margin({
      left: 10,
      top: 10,
      right:10
    })
  }
}

组件效果如图:

【鸿蒙应用】List、ListItem和ListItemGroup组件_List


标签:info,console,title,List,item,ListItem,ListItemGroup,组件,projects
From: https://blog.51cto.com/u_12344418/12017511

相关文章

  • 使用@Validated校验List集合中数据失效
    我们可以写一个集合实现list,代码如下,在controller类上面不用加@Validated注解,在controller使用自定义ValidableList集合,对list进行封装,就可以对scheduleDtoList做参数校验处理。@Api(tags="xxxx管理")@RestController@RequestMapping("aaa/indicatorDeviceCategoryDe......
  • MySQL show processlist说明
    showprocesslist和showfullprocesslistprocesslist命令的输出结果显示了有哪些线程在运行,不仅可以查看当前所有的连接数,还可以查看当前的连接状态帮助识别出有问题的查询语句等。如果是root帐号,能看到所有用户的当前连接。如果是其他普通帐号,则只能看到自己占用的连接。showp......
  • Arrays.asList方法
    Arrays.asList() 是Java中的一个静态方法,它属于 java.util.Arrays 类。这个方法的作用是将一个数组转换成一个固定大小的列表(List)。需要注意的是,这个列表是由原始数组支持的,因此这个列表的大小是固定的,并且不支持添加或删除元素的操作,因为这样的操作会改变列表的大小,而底......
  • 黑马面试集合(ArrayList, HashMap)篇笔记整理,结尾附Java的集合相关高频面试题及答案
    集合操作数据的特点-算法复杂度分析数据结构算法复杂度分析为什么要进行复杂度分析?指导编写性能更优的代码评判别人写代码的好坏时间复杂度分析时间复杂度分析:来评估代码的执行耗时的假设每行代码的执行耗时一样:1ms分析这段代码一共执行多少行?3n+3......
  • Java 假设有一个对象list 有4列,4和3比较name 如果name不相同则记录4的version值string
    可以使用传统循环或Java8的流(Stream)API来实现这一逻辑。以下是这两种方法的示例代码:1.使用传统循环importjava.util.List;publicclassMain{publicstaticvoidmain(String[]args){List<MyObject>list=...;//初始对象列表String......
  • Java怎么把多个对象的list的数据合并
    1.示例一:创建几个包含Person对象的List,并将它们合并成一个新的List在Java中,将多个对象的List合并通常涉及到遍历这些List并将它们的元素添加到一个新的List中。这里,我将给出一个详细的代码示例,该示例将展示如何将多个包含相同类型对象的List合并成一个List。假设我们有一个简单的......
  • Java怎么把多个对象的list的数据合并
    1.示例一:创建几个包含Person对象的List,并将它们合并成一个新的List在Java中,将多个对象的List合并通常涉及到遍历这些List并将它们的元素添加到一个新的List中。这里,我将给出一个详细的代码示例,该示例将展示如何将多个包含相同类型对象的List合并成一个List。假设我们有一个简单......
  • 某智能网关 list_service_manage存在命令执行漏洞
    漏洞描述瑞斯康达多业务智能网关list_service_manage.php存在未授权命令注入漏洞,攻击者利用可获取服务器权限。资产信息FOFA:body="/images/raisecom/back.gif"漏洞复现pocPOST/vpn/list_service_manage.php?template=%60whoami%3E%2Fwww%2Ftmp%2F1.txt%60HTTP/1.1H......
  • C# List删除元素的性能优化
    背景X上闲逛发现这样一个post简单翻译一下,就是说如果针对无序数组(顺序不重要),要删除其中某个元素,比起费劲的移动很多元素,可以把要删除的元素和最后一个元素交换,然后减小数组的长度即可。然后我看有回复说,他给dotnet提了PR有这样的一个优化githubPR地址:https://github.com/do......
  • QListWidget(IconMode)
    #include"widget.h"#include<QHBoxLayout>#include<QListWidgetItem>Widget::Widget(QWidget*parent):QWidget(parent){resize(600,400);p_ListWidget=newQListWidget(this);p_ListWidget->setViewMode(QListView::IconMode);......