Flutter图标管理插件r_icon_pro的使用

Flutter图标管理插件r_icon_pro的使用

r_icon_pro

r_icon_pro 是一个为 Flutter 提供的图标包,包含 1200+ 个圆角图标,设计风格时尚现代。非常适合需要干净且极简风格图标集的应用。

Icon Gallery

特性

  • 1200+ 图标:涵盖各种应用场合的图标集合。
  • 圆角风格:每个图标都采用平滑的圆角设计。
  • 易于使用:简单集成到任何 Flutter 项目中。
  • 自定义字体:图标作为自定义字体封装,方便缩放且高效使用。

安装

在你的 pubspec.yaml 文件中添加 r_icon_pro 包:

dependencies:
  r_icon_pro: ^1.0.3

然后运行 flutter pub get 来安装该包。

使用/示例

使用方式与 Flutter 的 Material Icons 类似:

import 'package:r_icon_pro/r_icon_pro.dart';

const Icon(RIcon.Add_Circle, color: Colors.blueAccent);
const Icon(RIcon.Alarm_Play, size: 30);
const Icon(RIcon.Balloon);

图标分类

通过点击以下链接浏览不同类别的图标:

  1. 🎯 箭头
  2. 🔄 动作箭头
  3. 🌌 天文学
  4. 🏗️ 建筑与基础设施
  5. 📊 商业与统计
  6. 📞 呼叫
  7. 🎨 设计工具
  8. 📱 电子设备
  9. 🧩 基本UI
  10. 😄 面部表情与贴纸
  11. 📄 文件
  12. 📂 文件夹
  13. 🍴 食物与厨房
  14. 🛋️ 家居与家具
  15. 👍 喜欢
  16. 📝 列表
  17. 🗺️ 地图与位置
  18. 💊 医药
  19. 💬 消息与对话
  20. 💵 金钱
  21. 🏞️ 自然与旅行
  22. 🌐 网络与连接
  23. 🗒️ 笔记
  24. 🔔 通知
  25. 🎓 学校
  26. 🔍 搜索
  27. 🛡️ 安全
  28. ⚙️ 设置与微调
  29. 🛒 购物与电子商务
  30. 体育
  31. ✍️ 文本格式
  32. 时间
  33. 🚗 运输、零件与服务
  34. 👤 用户
  35. 🎵 视频、音频与声音
  36. 🌦️ 天气

图标图库

以下是该包中可用的 1200+ 个图标预览:

箭头

Arrows

动作箭头

Action Arrows

天文学

Astronomy

建筑与基础设施

Building & Infrastructure

商业与统计

Business & Statistics

呼叫

Call

设计工具

Design & Tools

电子设备

Electronics & Devices

基本UI

Essential UI

面部表情与贴纸

Faces, Emotions, & Stickers

文件

Files

文件夹

Folders

食物与厨房

Food & Kitchen

家居与家具

Home & Furniture

喜欢

Like

列表

List

地图与位置

Map & Location

医药

Medicine

消息与对话

Messages & Conversation

金钱

Money

自然与旅行

Nature & Travel

网络与连接

Network & Connection

笔记

Notes

通知

Notifications

学校

School

搜索

Search

安全

Security

设置与微调

Settings & Fine Tuning

购物与电子商务

Shopping & Ecommerce

体育

Sports

文本格式

Text Formatting

时间

Time

运输、零件与服务

Transport, Parts, & Service

用户

Users

视频、音频与声音

Video, Audio, & Sound

天气

Weather

示例代码

以下是一个完整的示例代码,展示了如何在 Flutter 应用中使用 r_icon_pro 插件。

import 'package:flutter/material.dart';
import 'package:r_icon_pro/r_icon_pro.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // 这是你的应用根组件
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'R Icon Pro Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const RIconProExampleHome(),
    );
  }
}

class RIconProExampleHome extends StatefulWidget {
  const RIconProExampleHome({super.key});

  [@override](/user/override)
  State<RIconProExampleHome> createState() => _RIconProExampleHomeState();
}

class _RIconProExampleHomeState extends State<RIconProExampleHome> {

  // 静态图标列表
  List<Icon> staticIconList = [
    const Icon(RIcon.Accessibility),
    const Icon(RIcon.Alarm),
    const Icon(RIcon.Add_Circle, color: Colors.blueAccent),
    const Icon(RIcon.Alarm_Play, size: 30),
    const Icon(RIcon.Balloon),
    const Icon(RIcon.Battery_Charge_Minimalistic),
    const Icon(RIcon.Bill),
    const Icon(RIcon.Calendar_Date),
    const Icon(RIcon.Calendar_Add),
    const Icon(RIcon.Record_Circle),
    const Icon(RIcon.Reel),
    const Icon(RIcon.Refresh),
    const Icon(RIcon.Code_File),
    const Icon(RIcon.Figma),
    const Icon(RIcon.File_Check),
    const Icon(RIcon.Paperclip_Rounded),
    const Icon(RIcon.Four_K),
    const Icon(RIcon.Pen_New_Round),
    const Icon(RIcon.Code_File),
    const Icon(RIcon.Gallery_Send),
    const Icon(RIcon.Gallery),
    const Icon(RIcon.Camera),
    const Icon(RIcon.XXX),
    const Icon(RIcon.Body),
    const Icon(RIcon.Bell),
    const Icon(RIcon.Bell_Off),
  ];

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('R Icon Pro Demo')),
      body: Padding(
        padding: const EdgeInsets.symmetric(horizontal: 15),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            const Text(
              "R Icon Example",
              style: TextStyle(
                fontSize: 28,
                fontWeight: FontWeight.bold,
              ),
            ),
            const Text(
              "Take a look at some amazing examples for the RIcon pro package, We have 500+ icons available here",
              style: TextStyle(
                fontSize: 12,
                letterSpacing: .5,
                fontWeight: FontWeight.w300,
              ),
            ),

            const SizedBox(height: 20,),

            Expanded(
              child: GridView.builder(
                gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 4),
                itemCount: staticIconList.length,
                itemBuilder: (context, index) {
                  return Card(
                    child: staticIconList[index],
                    elevation: 1,
                  );
                },
              ),
            )
          ],
        ),
      ),
    );
  }
}

更多关于Flutter图标管理插件r_icon_pro的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter图标管理插件r_icon_pro的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,以下是一个关于如何在Flutter项目中使用r_icon_pro插件的示例代码。r_icon_pro是一个图标管理插件,可以帮助你更方便地在Flutter应用中使用图标。

首先,确保你已经在pubspec.yaml文件中添加了r_icon_pro依赖:

dependencies:
  flutter:
    sdk: flutter
  r_icon_pro: ^最新版本号  # 替换为当前最新版本号

然后,运行flutter pub get来安装依赖。

接下来,你可以在Flutter项目中按如下方式使用r_icon_pro插件:

import 'package:flutter/material.dart';
import 'package:r_icon_pro/r_icon_pro.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('r_icon_pro Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            // 使用r_icon_pro提供的图标
            Icon(
              RIconPro.home,
              size: 48,
              color: Colors.blue,
            ),
            SizedBox(height: 20),
            Icon(
              RIconPro.settings,
              size: 48,
              color: Colors.green,
            ),
            SizedBox(height: 20),
            IconButton(
              icon: Icon(RIconPro.search, color: Colors.red),
              onPressed: () {
                // 处理点击事件
                print('Search icon clicked');
              },
            ),
          ],
        ),
      ),
    );
  }
}

在这个示例中,我们做了以下几件事:

  1. 导入r_icon_pro包。
  2. MyAppMyHomePage中构建了一个简单的Flutter应用。
  3. MyHomePageCenter组件中,使用了r_icon_pro提供的图标,包括homesettingssearch图标。
  4. 设置了图标的大小和颜色,并展示了如何使用IconButton来处理图标的点击事件。

请注意,RIconPro.homeRIconPro.settingsRIconPro.search是假设的图标名称,实际使用时你需要参考r_icon_pro插件的文档来获取正确的图标名称。

另外,由于r_icon_pro的具体API和图标集可能会随着版本更新而变化,因此建议查阅最新的官方文档以获取最准确的信息。

回到顶部