前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Element 系列组件之 ERadioGroup 单选组件

Element 系列组件之 ERadioGroup 单选组件

作者头像
老孟Flutter
发布2021-12-21 16:06:07
4950
发布2021-12-21 16:06:07
举报
文章被收录于专栏:FlutterFlutter

介绍

「ERadioGroup」「Element」 系列组件中的单选组件。

引入

「pubspec.yaml」 中依赖

代码语言:javascript
复制
element_ui: ^0.0.1

import

代码语言:javascript
复制
import 'package:element_ui/widgets.dart';

用法

基础用法

代码语言:javascript
复制
ERadioGroup(
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项',
    ),
    ERadioItem(
      value: '2',
      label: '备选项',
    ),
  ],
)

禁用选项

代码语言:javascript
复制
ERadioGroup(
  radios: [
    ERadioItem(
      value: '1',
      label: '禁用',
      enable: false,
    ),
    ERadioItem(
      value: '2',
      label: '备选项',
    ),
  ],
)

「onChanged」 当值发生变化时触发

代码语言:javascript
复制
ERadioGroup(
  selectValue: '1',
  onChanged: (value) {
    print('ERadioGroup onChanged value:$value');
  },
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
  ],
)

「selectValue」 默认选中值

代码语言:javascript
复制
ERadioGroup(
  selectValue: '1',
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
    ERadioItem(
      value: '3',
      label: '备选项3',
    )
  ],
),

按钮样式单选

代码语言:javascript
复制
ERadioButtonGroup(
  style: ERadioStyle(
      padding:
          EdgeInsets.symmetric(horizontal: 24, vertical: 12)),
  radios: [
    ERadioItem(
      value: '1',
      label: '北京',
    ),
    ERadioItem(
      value: '2',
      label: '上海',
    ),
    ERadioItem(
      value: '3',
      label: '广州',
    ),
    ERadioItem(
      value: '4',
      label: '深圳',
    ),
  ],
)

「border」 是否显示边框

代码语言:javascript
复制
ERadioGroup(
  border: true,
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
  ],
)

「style」 样式属性

  • 「fontColor」:字体颜色
  • 「checkedFontColor」:选中字体颜色
  • 「backgroundColor」:背景颜色
  • 「checkedBackgroundColor」:选中背景颜色
  • 「borderColor」:边框颜色
  • 「checkedBorderColor」:选中边框颜色
  • 「borderRadius」:边框圆角
  • 「padding」:每一个选项padding
  • 「space」:两个选项选项间的间距

字体样式

代码语言:javascript
复制
ERadioGroup(
  style: ERadioStyle(
    fontColor: Colors.black,
    checkedFontColor: Colors.red
  ),
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
  ],
),

背景样式

代码语言:javascript
复制
ERadioGroup(
  style: ERadioStyle(
      backgroundColor: Colors.grey.withOpacity(.5),
      checkedBackgroundColor: Colors.red,
      checkedFontColor: Colors.white),
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
  ],
)

边框样式

代码语言:javascript
复制
ERadioGroup(
  style: ERadioStyle(
    borderColor: Colors.grey.withOpacity(.3),
    checkedBorderColor: Colors.red,
    borderRadius: BorderRadius.all(Radius.circular(3))
  ),
  border: true,
  radios: [
    ERadioItem(
      value: '1',
      label: '备选项1',
    ),
    ERadioItem(
      value: '2',
      label: '备选项2',
    ),
  ],
)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 老孟Flutter 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
  • 引入
  • 用法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档