日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Flutter教程:Flutter 文本輸入

介紹

本頁面介紹如何在Flutter應用程序中輸入文本

在成都網(wǎng)站制作、成都網(wǎng)站設計過程中,需要針對客戶的行業(yè)特點、產(chǎn)品特性、目標受眾和市場情況進行定位分析,以確定網(wǎng)站的風格、色彩、版式、交互等方面的設計方向。創(chuàng)新互聯(lián)還需要根據(jù)客戶的需求進行功能模塊的開發(fā)和設計,包括內(nèi)容管理、前臺展示、用戶權(quán)限管理、數(shù)據(jù)統(tǒng)計和安全保護等功能。

選擇一個widget

TextField 是最常用的文本輸入widget.

默認情況下,TextField有一個下劃線裝飾(decoration)。您可以通過提供給decoration屬性設置一個InputDecoration來添加一個標簽、一個圖標、提示文字和錯誤文本。 要完全刪除裝飾(包括下劃線和為標簽保留的空間),將decoration明確設置為空即可。

TextFormField包裹一個TextField 并將其集成在Form中。你要提供一個驗證函數(shù)來檢查用戶的輸入是否滿足一定的約束(例如,一個電話號碼)或當你想將TextField與其他FormField集成時,使用TextFormField。

獲取用戶輸入

有兩種獲取用戶輸入的主要方法:

  • 處理 onChanged回調(diào)
  • 提供一個TextEditingController.

onChanged

每當用戶輸入時,TextField會調(diào)用它的onChanged回調(diào)。 您可以處理此回調(diào)以查看用戶輸入的內(nèi)容。例如,如果您正在輸入搜索字段,則可能需要在用戶輸入時更新搜索結(jié)果。

TextEditingController

一個更強大(但更精細)的方法是提供一個TextEditingController作為TextField的controller屬性。 在用戶輸入時,controller的text和selection屬性不斷的更新。要在這些屬性更改時得到通知,請使用controller的addListener方法監(jiān)聽控制器 。 (如果你添加了一個監(jiān)聽器,記得在你的State對象的dispose方法中刪除監(jiān)聽器 )。

該TextEditingController還可以讓您控制TextField的內(nèi)容。如果修改controller的text或selection的屬性,TextField將更新,以顯示修改后的文本或選中區(qū)間。 例如,您可以使用此功能來實現(xiàn)推薦內(nèi)容的自動補全。

例子

以下是使用一個TextEditingController讀取TextField中用戶輸入的值的示例:

/// Opens an [AlertDialog] showing what the user typed.
class ExampleWidget extends StatefulWidget {
  ExampleWidget({Key key}) : super(key: key);

  @override
  _ExampleWidgetState createState() => new _ExampleWidgetState();
}

/// State for [ExampleWidget] widgets.
class _ExampleWidgetState extends State {
  final TextEditingController _controller = new TextEditingController();

  @override
  Widget build(BuildContext context) {
    return new Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        new TextField(
          controller: _controller,
          decoration: new InputDecoration(
            hintText: 'Type something',
          ),
        ),
        new RaisedButton(
          onPressed: () {
            showDialog(
              context: context,
              child: new AlertDialog(
                title: new Text('What you typed'),
                content: new Text(_controller.text),
              ),
            );
          },
          child: new Text('DONE'),
        ),
      ],
    );
  }
}

文章名稱:創(chuàng)新互聯(lián)Flutter教程:Flutter 文本輸入
URL分享:http://www.dlmjj.cn/article/ccdhiih.html