Flutter框架跨平台鸿蒙开发——Icon组件基础

一、Icon组件简介

Icon是Flutter中显示图标的组件,Material Design提供了丰富的图标库。

Icon组件结构

Icon组件
icon属性
size属性
color属性
Icons.xxx
IconData
ImageIcon

二、基础用法

最简单的Icon

dart 复制代码
Icon(Icons.star)

带颜色和大小的Icon

dart 复制代码
Icon(
  Icons.star,
  color: Colors.yellow,
  size: 48,
)

三、Material Icons

常用图标

dart 复制代码
Row(
  mainAxisAlignment: MainAxisAlignment.spaceAround,
  children: [
    Icon(Icons.home),
    Icon(Icons.search),
    Icon(Icons.settings),
    Icon(Icons.favorite),
    Icon(Icons.share),
  ],
)

图标分类

dart 复制代码
Column(
  children: [
    Text('导航类'),
    Row(children: [Icon(Icons.home), Icon(Icons.menu), Icon(Icons.arrow_back)]),
    Text('社交类'),
    Row(children: [Icon(Icons.favorite), Icon(Icons.share), Icon(Icons.comment)]),
    Text('媒体类'),
    Row(children: [Icon(Icons.play_arrow), Icon(Icons.pause), Icon(Icons.volume_up)]),
  ],
)

四、完整示例

dart 复制代码
class BasicIconExample extends StatelessWidget {
  const BasicIconExample({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('基础Icon')),
      body: GridView.count(
        crossAxisCount: 4,
        padding: EdgeInsets.all(16),
        mainAxisSpacing: 16,
        crossAxisSpacing: 16,
        children: [
          _buildIconCard(Icons.home, '首页'),
          _buildIconCard(Icons.search, '搜索'),
          _buildIconCard(Icons.settings, '设置'),
          _buildIconCard(Icons.favorite, '收藏'),
          _buildIconCard(Icons.share, '分享'),
          _buildIconCard(Icons.notification, '通知'),
          _buildIconCard(Icons.camera, '相机'),
          _buildIconCard(Icons.mail, '邮件'),
        ],
      ),
    );
  }

  Widget _buildIconCard(IconData icon, String label) {
    return Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        Icon(icon, size: 32),
        SizedBox(height: 8),
        Text(label, style: TextStyle(fontSize: 12)),
      ],
    );
  }
}

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net

相关推荐
autumn20051 分钟前
Flutter 框架跨平台鸿蒙开发 - AR历史场景穿越
flutter·华为·ar·harmonyos
AI_零食20 分钟前
开源鸿蒙跨平台Flutter开发:手账记事模板库应用
学习·flutter·华为·开源·harmonyos·鸿蒙
提子拌饭13324 分钟前
开源鸿蒙跨平台Flutter开发:家庭影像传承系统
flutter·华为·开源·harmonyos·鸿蒙
李李李勃谦31 分钟前
Flutter 框架跨平台鸿蒙开发 - 手工作品展示
flutter·华为·harmonyos
左手厨刀右手茼蒿33 分钟前
Flutter 三方库 klutter 的鸿蒙化适配指南 - 掌握 Kotlin Multiplatform (KMP) 互操作技术、助力鸿蒙应用构建极致复用且高性能的跨端业务逻辑共享体系
flutter·harmonyos·鸿蒙·openharmony
世人万千丶34 分钟前
开源鸿蒙跨平台Flutter开发:古诗词学习应用
学习·flutter·华为·开源·harmonyos·鸿蒙
独特的螺狮粉1 小时前
开源鸿蒙跨平台Flutter开发:室内探险游戏应用
开发语言·flutter·游戏·华为·开源·harmonyos·鸿蒙
九狼1 小时前
中型Flutter 项目 Riverpod 2.x 迁移 3.0 避坑实录
flutter
独特的螺狮粉1 小时前
开源鸿蒙跨平台Flutter开发:喝水时间提醒应用
开发语言·flutter·华为·信息可视化·开源·harmonyos·鸿蒙
空中海1 小时前
1.1 Flutter 简介与架构原理
flutter·dart