首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >flutter如何在TextField中修改光标的内容和高度

flutter如何在TextField中修改光标的内容和高度
EN

Stack Overflow用户
提问于 2020-07-16 22:04:43
回答 4查看 1.8K关注 0票数 2

这张图片中的光标和文本就是我想要的

但是我的演示看起来像是this.The文本和光标都很小,而且没有填充

代码

代码语言:javascript
运行
复制
TextEditingController searchController = new TextEditingController();
FocusNode focusNode = new FocusNode();

// other code

TextField(
  key: Key("buy_subject_input"),
  autofocus: true,
  focusNode: focusNode,
  cursorColor: Colours.default_color,
  decoration: InputDecoration(
    hintText: 'search',
    hintStyle: TextStyle(
      color: Colours.hint_text_color,
    ),
    prefixIcon: Icon(
      Icons.search,
      color: Colours.hint_text_color,
    ),
    fillColor: Colors.white,
    filled: true,
    border: UnderlineInputBorder(
      borderSide: BorderSide.none,
      borderRadius: BorderRadius.all(Radius.circular(5)),
    ),
  ),
  controller: searchController,
),

//other code
EN

回答 4

Stack Overflow用户

发布于 2020-07-16 22:58:50

您可以使用输入装饰参数content-padding来缩小文本字段的限制区域和TextForm style parameter之间的空间,从而使文本和光标高度更大。

这里是一个代码示例

代码语言:javascript
运行
复制
  TextEditingController searchController =
      new TextEditingController(text: 'search');
  FocusNode focusNode = new FocusNode();

  @override
  Widget build(BuildContext context) {
    return TextField(
      key: Key("buy_subject_input"),
      autofocus: true,
      focusNode: focusNode,
      cursorColor: Colors.black,
      style: TextStyle(fontSize: 22, height: 2.0),
      decoration: InputDecoration(
        contentPadding: EdgeInsets.symmetric(vertical: 2.0),
        hintStyle: TextStyle(
          color: Colors.black,
        ),
        prefixIcon: Icon(
          Icons.search,
          color: Colors.black,
        ),
        fillColor: Colors.white,
        filled: true,
        border: UnderlineInputBorder(
          borderSide: BorderSide.none,
          borderRadius: BorderRadius.all(Radius.circular(5)),
        ),
      ),
      controller: searchController,
    );
  }
}

您还可以使用库比蒂诺文本字段来拥有与iphone相同的布局

代码示例

代码语言:javascript
运行
复制
CupertinoTextField(
      prefix: Icon(Icons.search),
      placeholder: 'search',
    );  
票数 1
EN

Stack Overflow用户

发布于 2021-07-03 00:38:30

在到处搜索后,我最终找到了它,你必须给出style: TextStyle( height: 2.0,),以增加光标高度。

代码语言:javascript
运行
复制
 TextField(
     style: TextStyle(
     height: 2.0,
     ),
     decoration: InputDecoration(
                    isDense: true,
                    contentPadding: EdgeInsets.only(
                        bottom: 15, top: 15, left: 10, right: 10)),
     ),
票数 1
EN

Stack Overflow用户

发布于 2022-01-28 02:12:26

代码语言:javascript
运行
复制
 TextField(
  cursorHeight: 20, // you can put your ideal height here
  decoration: InputDecoration(
    border: OutlineInputBorder(),
    labelText: 'How to Change Cursor Height'

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62936544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档