当前位置:   article > 正文

flutter 输入框_flutter输入框TextField中文本textAlign对齐分析篇

van-field 输入框 vant 更改占位提示文字从右到左direction: rtl;

49b7fe3ea6c160b6f12be0a2895fc22e.png

http://weixin.qq.com/r/bUzg_G3EmDDnrSmb9xl- (二维码自动识别)

当我们在使用一个 TextField 构建一个输入框时,会有如下效果:

af0918f1c065103764fd0efe3f8fb7d3.png

在实际应用程序的开发中,有时我们会希望输入的文字居中对齐或者是右对齐,那么就应用到了我本文章中所讲述内容,凡是涉及到一个内容,我们务必精益求精。

1 TextField 输入文本对齐配置

在 TextField 组件中,可以通过 textAlign 属性来配置TextField 输入文本对齐方式,更高级点的用法就是再结合 textDirection 文字方向来配置输入文本对齐方式。

一般文字的对齐方式如下图所示

87642c75fdf974c762c33f3b7cff5358.png

我们可以通过 textAlign 属性很轻松的实现

  1. // TextAlign.center 居中
  2. // TextAlign.left 靠左对齐 TextField默认使用
  3. // TextAlign.right 靠右对齐

那么对于如下取值

  1. // TextAlign.start 文字开始位置对齐
  2. // TextAlign.end 文字结束位置对齐

就与文字的绘制方向有关系了

e24808c8533261e6c437897799b02cb4.png

c81ff985860cf92888d2a6d82994358f.png

从上图可看出 文字绘制方向无非就是从左向右或者是从右向左,可通过 TextField 的属性 textDirection 来配置

  1. /// TextDirection.ltr left to right 文字从左向右
  2. /// TextDirection.rtl right to left 文字从右向左

2 代码实现与配置说明

  1. import 'package:flutter/cupertino.dart';
  2. import 'package:flutter/material.dart';
  3. ///整理
  4. ///TextField 输入文本 textAlign
  5. class TextFeildHomePage4 extends StatefulWidget {
  6. @override
  7. State<StatefulWidget> createState() {
  8. return TextFeildHomePageState();
  9. }
  10. }
  11. class TextFeildHomePageState extends State {
  12. @override
  13. void initState() {
  14. super.initState();
  15. }
  16. @override
  17. Widget build(BuildContext context) {
  18. return Scaffold(
  19. appBar: AppBar(
  20. title: Text("TextField 讲解"),
  21. ),
  22. body: Container(
  23. ///SizedBox 用来限制一个固定 width height 的空间
  24. child: SizedBox(
  25. width: 400,
  26. height: 100,
  27. child: Container(
  28. color: Colors.white24,
  29. padding: EdgeInsets.all(10),
  30. ///Alignment 用来对齐 Widget
  31. alignment: Alignment(0, 0),
  32. ///文本输入框
  33. child: TextField(
  34. ///输入框内输入文本 居中对齐
  35. ///设置文本的对齐方式
  36. // TextAlign.center 居中
  37. // TextAlign.left 靠左对齐 TextField默认使用
  38. // TextAlign.right 靠右对齐
  39. // TextAlign.justify 拉伸以结束的文本行以填充容器的宽度。即使用了decorationStyle才起效
  40. // TextAlign.start 针对 文字方向来使用 textDirection
  41. // TextDirection.ltr TextAlign.start 左对齐
  42. // TextDirection.rtl TextAlign.start 右对齐
  43. // TextAlign.end
  44. // TextDirection.ltr TextAlign.end 右对齐
  45. // TextDirection.rtl TextAlign.end 左对齐
  46. textAlign: TextAlign.start,
  47. /// 用来设置文字的绘制方向的
  48. /// TextDirection.ltr left to right 文字从左向右
  49. /// TextDirection.rtl right to left 文字从右向左
  50. textDirection: TextDirection.rtl,
  51. ),
  52. ),
  53. ),
  54. ),
  55. );
  56. }
  57. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/289776
推荐阅读
相关标签
  

闽ICP备14008679号