Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【Flutter 专题】65 图解基本 TextField 文本输入框 (二)

【Flutter 专题】65 图解基本 TextField 文本输入框 (二)

作者头像
阿策小和尚
发布于 2019-10-28 10:02:54
发布于 2019-10-28 10:02:54
4.7K00
代码可运行
举报
文章被收录于专栏:阿策小和尚阿策小和尚
运行总次数:0
代码可运行

和尚刚学习了 TextField 的基本用法,今天特意学习一下 TextField InputDecoration 文本框装饰器的相关内容;

InputDecoration 源码分析

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const InputDecoration({
    this.icon,                  // 装饰器外小图标
    this.labelText,             // 文本框描述标签
    this.labelStyle,            // 文本框描述标签样式
    this.helperText,            // 文本框辅助标签
    this.helperStyle,           // 文本框辅助标签样式
    this.hintText,              // 文本框默认提示信息
    this.hintStyle,             // 文本框默认提示信息样式
    this.hintMaxLines,          // 文本框默认提示信息最大行数
    this.errorText,             // 文本框错误提示信息
    this.errorStyle,            // 文本框错误提示信息样式
    this.errorMaxLines,         // 文本框错误提示信息最大行数
    this.hasFloatingPlaceholder = true,     // 文本框获取焦点后 labelText 是否向上浮动
    this.isDense,               // 是否问紧凑型文本框
    this.contentPadding,        // 文本内边距
    this.prefixIcon,            // 前置图标
    this.prefix,                // 前置预填充 Widget
    this.prefixText,            // 前置预填充文本
    this.prefixStyle,           // 前置预填充样式
    this.suffixIcon,            // 后置图标
    this.suffix,                // 后置预填充 Widget
    this.suffixText,            // 后置预填充文本
    this.suffixStyle,           // 后置预填充样式
    this.counter,               // 输入框右下角 Widget
    this.counterText,           // 输入框右下角文本
    this.counterStyle,          // 输入框右下角样式
    this.filled,                // 是否颜色填充文本框
    this.fillColor,             // 填充颜色
    this.errorBorder,           // errorText 存在时未获取焦点边框
    this.focusedBorder,         // 获取焦点时边框
    this.focusedErrorBorder,    // errorText 存在时获取焦点边框
    this.disabledBorder,        // 不可用时边框
    this.enabledBorder,         // 可用时边框
    this.border,                // 边框
    this.enabled = true,        // 输入框是否可用
    this.semanticCounterText,
    this.alignLabelWithHint,    // 覆盖将标签与 TextField 的中心对齐
})

const InputDecoration.collapsed({
    @required this.hintText,
    this.hasFloatingPlaceholder = true,
    this.hintStyle,
    this.filled = false,
    this.fillColor,
    this.border = InputBorder.none,
    this.enabled = true,
})

分析源码可知,Flutter 不仅提供了全面的构建装饰器的方式,还提供了简单便利的构建方式 collapsed 默认是无边框的,且无法设置标签等其他属性;

案例尝试

  1. icon 为装饰器外小图标,可灵活设置图标或其他 Widget,默认距输入框 16dp,主题可通过 IconTheme 设置;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(icon: Image.asset('images/ic_launcher.png')));
return TextField(decoration: InputDecoration(icon: Icon(Icons.android)));
  1. labelText 为文本框描述标签,为 String 类型,直接编辑内容即可;labelStyle 为标签样式属性;TextField 获取焦点之后描述标签上移;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple)));
  1. helperText 为文本框辅助标签,一般在文本框底部,提示性内容;helperStyle 为文本框辅助标签样式属性;与 TextField 是否获取焦点无变化;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    helperText: '请输入手机号或邮箱!', helperStyle: TextStyle(color: Colors.teal)));
  1. hintText 为文本框默认提示信息,若设置 labelText,则 TextField 在未获取焦点时优先展示 labelTexthintStyle 为文本框提示信息样式属性;hintMaxLines 为提示信息过长时允许展示的最大行数;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    hintStyle: TextStyle(color: Colors.brown), hintMaxLines: 1, hintText: '请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!'));

return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    helperText: '请输入手机号或邮箱!', helperStyle: TextStyle(color: Colors.teal),
    hintText: '请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!',
    hintStyle: TextStyle(color: Colors.brown), hintMaxLines: 2));
  1. errorText 为文本框错误提示信息,一般在文本框底部,当设置 errorText 时不展示 helperText,整体默认为红色;errorStyle 为错误提示信息样式属性;errorMaxLines 为错误信息过长时允许展示的最大行数;与 hintText 类似;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(onChanged: (text) { setState(() { _textLength = text.length; }); },
    decoration: InputDecoration(
        labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
        helperText: '请输入手机号或邮箱!', helperStyle: TextStyle(color: Colors.teal),
        hintText: '请输入用户名信息!', hintStyle: TextStyle(color: Colors.brown),
        errorText: _textLength > 11 ? '请勿超过 11 位用户名!' : null, errorStyle: TextStyle(color: Colors.pink)));
  1. hasFloatingPlaceholder 设置 TextField 获取焦点时 labelText 是否向上浮动;设置为 false 时,获取焦点后 labelText 隐藏,不会向上浮动;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    hasFloatingPlaceholder: false));
  1. isDense 是否为紧凑型文本框,true 为紧凑型文本框,图标等与输入框边距较小;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(icon: Icon(Icons.android), isDense: false));
return TextField(decoration: InputDecoration(icon: Icon(Icons.android), isDense: true));
  1. contentPadding 为编辑内容与文本框内边距;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
returnTextField(decoration: InputDecoration(contentPadding: EdgeInsets.all(20.0)));
  1. prefix… 是文本框前置组件,prefixIcon 为前置图标,固定在文本输入框前边,与 icon 位置不同,其样式通过 IconTheme 调整;prefixText 为前置预填充文本,例如手机号前(+86) 之类;prefix 为前置预填充组件,可自由设置,更为灵活,但不能与 prefixText 同时使用;prefixStyle 为预填充组件样式;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    prefixIcon: Icon(Icons.supervised_user_circle), prefixText: '(+86)', prefixStyle: TextStyle(color: Colors.purple.withOpacity(0.4))));

return TextField(decoration: InputDecoration(
    prefixIcon: Icon(Icons.supervised_user_circle), prefixStyle: TextStyle(color: Colors.purple.withOpacity(0.4)),
    prefix: Row(mainAxisSize: MainAxisSize.min, children: <Widget>[Icon(Icons.phone), Text('(+86)')])));
  1. suffix… 为文本框后置组件系列;与 prefix… 用法一致;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    suffixIcon: Icon(Icons.close), suffixText: '关闭', suffixStyle: TextStyle(color: Colors.purple.withOpacity(0.4))));

return TextField(decoration: InputDecoration(
    suffixIcon: Icon(Icons.close), suffixStyle: TextStyle(color: Colors.purple.withOpacity(0.4)),
    suffix: Row(mainAxisSize: MainAxisSize.min, children: <Widget>[Text('关闭'), Icon(Icons.remove_red_eye)])));
  1. counter 系列为文本框右下角计数器,当设置 maxLengths 时通常会在右下角展示编辑字符数与整体数量比,可通过 counter 系列组件调整;counterText 为计数器展示内容;counterStyle 为计数器样式属性;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(maxLength: 20,
    decoration: InputDecoration(counterText: '最大长度不超过20', counterStyle: TextStyle(color: Colors.blueAccent)));
  1. filled 为文本框是否颜色填充,只有 true 时,filledColor 才生效;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(fillColor: Colors.green.withOpacity(0.4), filled: true));
  1. enabled 为文本框是否可用,false 为不可用,无法获取焦点;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(enabled: false));
  1. alignLabelWithHint 用于 TextField 设置多行时,true 时覆盖将标签与 TextField 的中心对齐的默认行为,和尚尝试了多种情况下 truefalse 状态,发现效果并不明显,有待继续研究;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(maxLines: null, decoration: InputDecoration(
  alignLabelWithHint: true, labelText: '用户名:',
  hintMaxLines: null, helperText: '请输入手机号或邮箱!',
  hintText: '请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!请输入用户名信息!',
));
  1. border 为一个系列,包括各种环境下边框;默认 border 为正常状态下边框;边框基本包括三类:

a. InputBorder 一般设置为无边框样式;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(border: InputBorder.none));

b. UnderlineInputBorder 一般设置为底部一条直线边框样式;和尚测试时设置边框圆角为 10dp 加上背景色效果更明显;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    border: UnderlineInputBorder(
        borderRadius: BorderRadius.all(Radius.circular(10.0)),
        borderSide: BorderSide(color: Colors.purple, width: 4.0, style: BorderStyle.solid))));

c. OutlineInputBorder 一般设置为包围的圆角边框;相较于 UnderlineInputBorder 多了 gapPadding 属性,用于浮动的 labelText 与边框的间距;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    border: OutlineInputBorder(
        gapPadding: 10.0, borderRadius: BorderRadius.all(Radius.circular(10.0)), 
        borderSide: BorderSide(color: Colors.purple, width: 4.0, style: BorderStyle.solid))));

和尚测试发现 UnderlineInputBorderOutlineInputBorder 对于设置 border 边框颜色无效,需要通过 ThemeData 来更改属性;

  1. enabledBorder 为可用时边框样式,enabledtrue

Tips:

  1. errorText 存在时 enabledBorder 不生效;
  2. 若不设置其他 border 属性,获取焦点默认是 ThemeData 中焦点边框,设置 borderfocusedBorder 等生效;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// UnderlineInputBorder 类型且只设置 enabledBorder
return TextField(decoration: InputDecoration(filled: true,fillColor: Colors.green.withOpacity(0.4),
    enabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple, width: 4.0))));
// UnderlineInputBorder 类型且设置 enabledBorder 和 border
return TextField(decoration: InputDecoration(filled: true, fillColor: Colors.green.withOpacity(0.4),
    enabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple, width: 4.0)),
    border: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)))));
// UnderlineInputBorder 类型且 errorText 不为空
return TextField(decoration: InputDecoration(filled: true, fillColor: Colors.green.withOpacity(0.4),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    enabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple, width: 4.0)),
    border: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)))));
// OutlineInputBorder 类型且只设置 enabledBorder
return TextField(decoration: InputDecoration(labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    enabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0)),
    border: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)))));
// OutlineInputBorder 类型设置 enabledBorder,且 errorText 不为空
return TextField(decoration: InputDecoration(labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    enabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0))));
// OutlineInputBorder 类,设置 enabledBorder 和 border 且 errorText 不为空  
return TextField(decoration: InputDecoration(labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    enabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0)),
    border: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)))));
  1. disabledBorder 为不可用时边框,enabledfalse;且 errorText 存在时 disabledBorder 不生效;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// UnderlineInputBorder 类型
return TextField( decoration: InputDecoration(enabled: false,
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    disabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0))));
// UnderlineInputBorder 类型且设置 errorText
return TextField(decoration: InputDecoration(enabled: false,
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    disabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0)));
// OutlineInputBorder 类型
return TextField(decoration: InputDecoration(enabled: false,
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    disabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.green, width: 4.0))));
// OutlineInputBorder 类型且设置 errorText
return TextField(decoration: InputDecoration(enabled: false,
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    disabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0))));
  1. focusedBorder 为获取焦点时边框,errorText 存在时 focusedBorder 不生效;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// UnderlineInputBorder 类型
return TextField(decoration: InputDecoration(
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    focusedBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0)),
    enabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple, width: 4.0))));
// UnderlineInputBorder 类型且设置 errorText
return TextField(decoration: InputDecoration(
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    focusedBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0)),
    enabledBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple, width: 4.0))));
// OutlineInputBorder 类型
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    enabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0)),
    focusedBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.green, width: 4.0))));
// OutlineInputBorder 类型且设置 errorText
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    focusedBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0)),
    enabledBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0))));
  1. errorBordererrorText 不为空且未获取焦点时边框;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// UnderlineInputBorder 类型
return TextField(decoration: InputDecoration(
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    errorBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.black.withOpacity(0.4), width: 4.0))));
// OutlineInputBorder 类型
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    errorBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.black.withOpacity(0.4), width: 3.0))));
  1. focusedErrorBordererrorText 不为空且获取焦点时边框;
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// UnderlineInputBorder 类型
return TextField(decoration: InputDecoration(
    filled: true, fillColor: Colors.green.withOpacity(0.4),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    focusedErrorBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.teal, width: 4.0)),
    errorBorder: UnderlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.black, width: 4.0))));
// OutlineInputBorder 类型
return TextField(decoration: InputDecoration(
    labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
    errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink),
    focusedErrorBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.pink, width: 4.0)),
    errorBorder: OutlineInputBorder(borderRadius: BorderRadius.all(Radius.circular(10.0)), borderSide: BorderSide(color: Colors.purple.withOpacity(0.4), width: 3.0))));

小扩展

在实际开发中,可能会随时需要关闭键盘,此时我们仅需监听一下即可;和尚监听一个文本输入框,当输入字符长度大于 11 位时即收起键盘;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return TextField(controller: controller,
    decoration: InputDecoration(
        labelText: '用户名:', labelStyle: TextStyle(color: Colors.purple),
        errorText: '请勿超过 11 位!', errorStyle: TextStyle(color: Colors.pink)));

void initState() {
  super.initState();
  controller.addListener(() {
    setState(() {
      if (controller.text.length >= 11) {
        // 收起键盘
        FocusScope.of(context).requestFocus(FocusNode());
      }
    });
  });
}

文本输入框确实有很多细节需要研究和尝试,和尚仅初步了解,有待深入研究;且和尚建议时常升级 Flutter 版本,可能对于同一个 Widget 会有或多或少的更新,如有问题请多多指导!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 阿策小和尚 微信公众号,前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MOOC教学,什么最重要?
MOOC教学的关键,不在于录视频,也不在于做幻灯。最重要的是赋能。赋能的具体方法,是在认知资源和学习者之间,建立丰富而有效的链接。
王树义
2018/08/22
8500
MOOC教学,什么最重要?
腾讯教育陈书俊:超大班、小班制、混合式 腾讯课堂三大在线教学模式助力“停课不停学”
3月14-15日,由北京师范大学未来教育高精尖创新中心和腾讯教育携手主办的“未来在线教育云端论坛”正式启动。全国顶级教育专家、知名校长与企业精英通过腾讯云大学、腾讯会议两大平台相聚“云端”,采用直播互动的方式,与全国教育工作者一起,深入探讨如何基于互联网开展更加高效、有价值的在线教育教学活动,以及未来教育教学的形态。 作为主办方代表之一,腾讯教育副总裁、腾讯在线教育部总经理陈书俊出席论坛并发表演讲。陈书俊讲述了腾讯课堂产品平台升级历程:从专为疫情定制开发10秒就能开课的“老师极速版”到不断迭代更新并适
鹅老师
2020/06/10
1.2K0
腾讯教育免费提供在线教育解决方案 覆盖20多省市数千万师生
“战疫”当前,腾讯教育联合合作伙伴发起”停课不停学“行动,提供免费在线教学、在线学习,助力各级学校师生和在线教育机构正常复课。 截止目前,腾讯教育已落地全国20多个各地教育局,覆盖数千万学生。湖北省、江苏省、河南省、陕西省等多个省,深圳、重庆、杭州、西安、珠海、宝鸡、安康等多市教育局已经筹备上线腾讯教育解决方案,另有20余各教育局陆续接入中。同时,腾讯企鹅辅导面向湖北全省学子的免费寒假课程,也已经送出超过6万节课。 “ 高考倒数只有100多天了,学生和家长心里着急啊。 ” ———重庆市第十一中
鹅老师
2020/06/10
7380
成都高新区老师编写“硬核”教学抗疫攻略
2月3日早上8点,成都高新区的中和中学、玉林中学、实验中学等5所学校的高三师生体验了一种全新的学习方式:通过空中课堂与老师互动交流,完成学业辅导和答疑。成都外国语学校高新校区的校长李俊用一首诗描述了当时的场景:“师在网络头,生在网络尾,日日上课不见君,共闻屏幕声。” 图:成都玉林中学周老师通过空中课堂给学生们答疑 防疫攻坚:筹备开学应急方案一个都不能少 疫情之下,没有局外人。 受新型冠病毒疫情的影响,2020年全国大中小学的春季开学日期集体延迟。尽管距离开学尚有一段时日,但如何确保学生们能够按
鹅老师
2020/06/10
5610
深圳盐田16所学校“云开学” 腾讯教育助力搭建“空中课堂”
一台电脑、一个麦克风,组成了一套简单的在线直播工具,在这个特殊的“加长版”寒假里,深圳市盐田区16所学校的1576位老师化身“主播”,通过“空中智慧课堂”等在线教学平台,为宅居在家的学生带来一堂堂精彩生动的课程。 图:盐田的老师在“空中智慧课堂”上课 10秒开课、1秒上课 盐田教育再启“深圳速度” 1月27日,教育部下发“2020年春季学期延期开学的通知”,同一时间,盐田区教育局统筹全区各学校情况,迅速制定了“直播、录播点播、混合学习相结合”的“空中智慧课堂”实施方案。 对于在线课堂的选
鹅老师
2020/06/10
8390
北京航空航天大学线上开学 腾讯课堂成护“航”者
“老师把上课铃音频发到群里,点开瞬间整个人都精神了。仪式感满满。” “这个特别时期听到这个经典的上课铃,觉得铃声特别有深意,一下子就感到了神圣和激动。” 2月24日早上8点,随着一曲悠扬的《巴赫小步舞曲》(上课铃声),北京航空航天大学(以下简称“北航”)春季学期线上第一课正式开启。开课第一日,一场特殊的升旗仪式在老主楼前举行,全体师生通过腾讯课堂在云端相聚,伴随鲜艳的五星红旗冉冉升起,一起迎接新学期的到来。 当天,北航飞行学院的水恒涌老师在腾讯课堂上进行了《地面理论》在线直播授课,班级80余名学生“悉
鹅老师
2020/06/10
7020
在线培训、在线健身、在线学一切!行业新模式激发双赢新可能
与传统的线下模式相比,线上化能够带来更灵活优质的体验、更低成本的交付、更广范围的覆盖,但很多行业的线上化探索因为开发周期长、门槛高、功能繁复等原因,并不顺利。而腾讯云音视频多人会议组件(TUIRoomKit)这个数字化新工具,则让音乐教学、美术培训、健身团课、考证考研、教学研讨、讲座论坛、企业培训这些原先定位线下的生意,终于能够统统搬到线上。而且这个“搬家列表”还在持续壮大,越来越多的行业正在利用腾讯云音视频多人会议组件(TUIRoomKit)激发自身业务的双赢新可能。
腾讯云音视频
2024/12/19
1290
在线培训、在线健身、在线学一切!行业新模式激发双赢新可能
10秒极速开课 腾讯教育助力长沙15万学子居家乐学
受新冠肺炎疫情影响,从2月10日起,长沙市各大、中、小学校陆续迎来了春季开学季。但和以往不同,这次的开学由“线下”转移到“线上”。截止目前,长沙共有近万名教师、超15万学子通过“腾讯空中课堂”迎来了新学期的第一课。 图:长沙市的老师通过腾讯课堂平台在家上课 腾讯教育推出“全家桶” 满足学校的个性化需求 为了满足不同区域、不同学情的学校和师生“停课不停学”的个性化需求,腾讯教育为长沙各级学校提供了一整套“空中课堂”资源包,供学校和师生家长自由选择。在“腾讯空中课堂”资源包内,涵盖了腾讯空中课堂、腾讯
鹅老师
2020/06/10
5290
腾讯教育携手吉大、同济、北邮专家 共话疫情下高校智慧教学新常态
随着疫情防控常态化,在线教学也已成为各地高校的教学“新常态”。新形势下,高校如何利用教育信息化工具开展在线教学?如何结合传统课堂经验不断提升线上教学质量? 5月12日,腾讯教育举办高校智慧教学经验分享会,邀请吉林大学、同济大学、北京邮电大学等多所高校信息化专家学者,共同探讨疫情下高校信息化建设新路径,并分享如何利用信息化工具探索高校线上线下融合教学与教育治理新范式。 腾讯云高等教育行业总经理李峪,联奕科技总裁朱明武,吉林大学教务处副处长、教授、博士生导师徐昊,同济大学信息化办公室主任兼教育技术与计算中心主任
鹅老师
2022/05/18
1.1K0
腾讯教育携手吉大、同济、北邮专家 共话疫情下高校智慧教学新常态
腾讯在线课堂再下一城 助力深圳中学在线开课
2月10日,深圳中学迎来开学第一天,全校286名教师与2700名余学生通过腾讯课堂全面开启在线授课与学习之旅,覆盖高中语文、数学、英语、物理、化学、生物、历史、地理、政治、体育全学科。 深圳中学朱华伟校长表示,为了让更多学生共享深中优质教育资源,此次线上直播课程面向社会开放,全国范围内有需求的学生均可同步在线学习。直播开启后,深中公开课直播受到3万多社会各界人士关注。 上课过程中,腾讯课堂的直播画面高清无延时,老师们熟练地使用多种教学工具与学生进行充分互动,展现了平台的高稳定性,得到了深圳中学的高度认
鹅老师
2020/06/10
1.1K0
数千万中小学师生硬核抗“疫” 集体在家用腾讯“在线课堂”上课
今春,全国千万中小学师生将迎来史上最特殊的开学季:足不出户,在家用腾讯空中课堂上课。 2020年伊始,全国大规模爆发新冠肺炎疫情,各地教育局纷纷出台延迟开学的相关政策。但延迟开学不等于不上课,如何在保障师生健康安全的同时,又保质保量的完成学习任务,已成为当下教育主管部门最为关注的重点。近日,包括湖北、河南、江苏、山东、武汉、深圳、杭州、长沙、珠海、重庆江津、北京昌平等全国20多家教育主管部门先后发文,推广使用腾讯空中课堂,保障全国数千万师生集体在家“开学”。 在线上课的首要问题,就是要保障在线教学的顺
鹅老师
2020/06/10
8260
深耕视听领域的匠人,如何看多媒体技术未来? | 专访上海交大宋利
引言 点击查看正片精彩内容 20 世纪 80 年代,当多媒体技术诞生,一个全新的多媒体应用时代大幕徐徐开启。四十年间,一代代技术人不断投身多媒体事业,这其中有许多深耕该领域的匠心人,埋首研究并持续创新,引领和推动多媒体技术不断演进,蓬勃发展。 上海交通大学电子工程系教授、图像所副所长宋利老师便是这样一位一路见证多媒体技术起步和勃兴,深耕多媒体技术数十年,引领着高校教学和研究数字化前行的“匠心人”。在本期技术指针中,我们将跟随腾讯云 TVP、上海交通大学 电子工程系教授 图像所副所长 宋利老师,透过学者视角
TVP官方团队
2023/03/30
5090
深耕视听领域的匠人,如何看多媒体技术未来? | 专访上海交大宋利
腾讯在杭州搞了件大事情:助力近百所中小学极速搭建在线课堂
1月30日,杭州市发布延迟开学预案,建议采用“空中课堂”开展教育教学活动,保障正常教学进度。据悉,腾讯课堂将为“空中课堂”提供技术支持与解决方案,助力杭州市中小学校开展在线教学。 截至目前,腾讯课堂在线课堂解决方案已覆盖杭州市近百所中小学校,包括第十四中学、长江实验小学、东城中学、学军中学海创园校区、安吉路实验学校、拱墅职业高级中学、风华中学、杭四中教育集团钱塘学校、下沙中学、青春中学、夏衍初级中学、艮山中学、余杭第二高级中学、瓶窑中学等。 近日,借助腾讯课堂,杭州市第十四中学(以下简称“杭州十四中”
鹅老师
2020/06/10
4950
开学啦,神兽归笼,老师别慌!
开学了,圈养在家的“小神兽”向学校奔赴而来。家长们大松一口气,老师们却要开始为新学期忙碌了,如何快速批改堆积如山的作业,如何备出一堂优质的课程,如何上好一堂精彩的课,如何在挤出的时间里完成“充电”提升…一大堆工作扑面而来,怎样才能做到事半功倍、“四两拨千斤”? 1 备课秘籍:学情为本,内外兼修 想要上好课,必须备好课。备课不容易,四十分钟在台上,十倍努力在台下。网上找素材如大海捞针,头疼;作业错题没统计、讲起课来凭印象,焦虑;授课没新意学生不爱听,心塞……老师们要备出一堂精彩的课,那可是智慧与汗水的结
腾讯智慧教育
2021/02/23
8980
停课不停学浪潮下,线下教育机构如何转型线上,突出疫情重围
2020年伊始,一场突如其来的新冠肺炎疫情给教育行业的线下培训带来“迎头痛击”,受冲击的程度如何,我们可以从教育部、各级教育厅和教育局的应对策略中得到基本解答:
盈鱼MA
2020/02/25
9300
停课不停学浪潮下,线下教育机构如何转型线上,突出疫情重围
教育直播系统应具备哪些功能?
一场突如其来的疫情给很多行业带来了影响,但是,在此之中,有一门行业却意外火热了起来,它就是在线教育。由于在线教育主要依托于直播平台,因此它的火热,也直接带动了直播的又一波发展,因此,很多互联网平台借助直播“足不出户”的优势,开始打造自己的教育直播系统。
云豹通讯员
2020/02/27
9830
教育直播系统应具备哪些功能?
00后当70后“小老师” 成都外国语师生共同体验在线课堂
“@DDZ,怎么线上举手?” “DDZ是啥?” “斗地主?” “豆豆张” “xswl…hhhhhh” 这是成都外国语学校文科班作业收集群里一段有趣的对话,喜欢用缩写的00后们在群里闹了个乌龙。 “DDZ(豆豆张)”其实是腾讯课堂一位产品经理的昵称,给成都外国语学校的师生们当了几天“线上操作客服”后,同学们遇到问题也习惯性的@DDZ。这位94年的DDZ早已和成都外国语学校的学生们打成一片,她也被学生们亲切地称为“小张老师”。 他们的故事,从1月31日,大年初七开始。 受疫情影响,全国中小学开学延期,成
鹅老师
2020/06/10
3720
手把手实战培训 腾讯课堂助力贵州3000余名初三教师极速体验在线课堂
“距离开学时间越来越近,时间紧任务重,怎样才能让全省老师在短时间内学会,并保证正式开学时能顺利开课呢?老师们被困在家里,怎么面对面、手把手教?” 为了应对2020年春季学期延迟开学的情况,贵州黔西南教育局早早就投入到开展在线授课的紧张筹备中,经过谨慎的筛选与考察,腾讯课堂“极速版”成为当地215所学校首选的在线教学平台。但是,如何对分散在各地的老师进行快速有效的培训,成了难题。 线上培训无疑是当下最优的方式。然而,黔西南州教育局信息中心主任黄老师对线上培训效果表示了担忧,“以往的线下培训都很难保证每个
鹅老师
2020/06/10
6580
老师必读!十步搞定网上开课
疫情发展至今,严格的隔离管控措施,渐渐开始明显起效。国家卫健委数据显示,2月17日0—24时,除湖北外,全国30个省份和新疆生产建设兵团的新增确诊病总数为79例,连续14天下降,并且首次进入两位数以内。 钟南山院士指出,我国采取的强有力干预措施已经取得明显效果。根据钟南山团队建立的模型预计, 2月中下旬全国病例数将达到峰值,但并不意味着达到峰值后马上下降。 “目前是否已经达到峰值还不确定,还需要再观察几天。”钟南山说, 峰值不等于“拐点”,疫情还有可能随着返工潮再次出现新的高峰。 也就是说,疫情还
鹅老师
2020/06/10
9710
如何设计好一门集成电路设计MOOC课程
在过去的一年中,我发布了两门在线MOOC课程,分别是中国大学MOOC平台的“芯动力——硬件加速设计方法”、IC创新学院的“数字集成电路静态时序分析基础”均收到了较好的反馈。
网络交换FPGA
2020/09/28
1.1K0
推荐阅读
MOOC教学,什么最重要?
8500
腾讯教育陈书俊:超大班、小班制、混合式 腾讯课堂三大在线教学模式助力“停课不停学”
1.2K0
腾讯教育免费提供在线教育解决方案 覆盖20多省市数千万师生
7380
成都高新区老师编写“硬核”教学抗疫攻略
5610
深圳盐田16所学校“云开学” 腾讯教育助力搭建“空中课堂”
8390
北京航空航天大学线上开学 腾讯课堂成护“航”者
7020
在线培训、在线健身、在线学一切!行业新模式激发双赢新可能
1290
10秒极速开课 腾讯教育助力长沙15万学子居家乐学
5290
腾讯教育携手吉大、同济、北邮专家 共话疫情下高校智慧教学新常态
1.1K0
腾讯在线课堂再下一城 助力深圳中学在线开课
1.1K0
数千万中小学师生硬核抗“疫” 集体在家用腾讯“在线课堂”上课
8260
深耕视听领域的匠人,如何看多媒体技术未来? | 专访上海交大宋利
5090
腾讯在杭州搞了件大事情:助力近百所中小学极速搭建在线课堂
4950
开学啦,神兽归笼,老师别慌!
8980
停课不停学浪潮下,线下教育机构如何转型线上,突出疫情重围
9300
教育直播系统应具备哪些功能?
9830
00后当70后“小老师” 成都外国语师生共同体验在线课堂
3720
手把手实战培训 腾讯课堂助力贵州3000余名初三教师极速体验在线课堂
6580
老师必读!十步搞定网上开课
9710
如何设计好一门集成电路设计MOOC课程
1.1K0
相关推荐
MOOC教学,什么最重要?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验