gpt4 book ai didi

flutter - 如何在一个值上使用 GetX?

转载 作者:行者123 更新时间:2023-12-05 02:00:16 24 4
gpt4 key购买 nike

我想制作一个密码文本框,其中的内容可见性可以通过后缀图标来控制。

代码可能是这样的:

import 'package:flutter/material.dart';
import 'package:get/get.dart';

void main() {
runApp(TestGetX());
}

class TestGetX extends StatelessWidget {
var eyeClosed = true.obs;

@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("Test GetX"),
),
body: Align(
alignment: Alignment.center,
child: Padding(
padding: EdgeInsets.all(20),
child: TextFormField(
obscureText: eyeClosed.value,
decoration: InputDecoration(
icon: Icon(
Icons.security,
color: Colors.purple,
),
hintText: "Your Password",
hintStyle: TextStyle(color: Colors.grey),
suffix: Obx(
() => InkWell(
child: eyeClosed.value
? Icon(Icons.visibility_off, color: Colors.grey)
: Icon(Icons.visibility, color: Colors.purple),
onTap: () {
eyeClosed.value = !eyeClosed.value;
},
),
),
),
),
),
),
),
);
}
}

Obx() 可以控制后缀图标,但是obscureText 不起作用。直接的方法是在 TextFormField 上使用 Obx(),但我认为这不是最好的方法。

结果如下:

enter image description here

最佳答案

您需要将 Obx() 包装在 TextFormField 中

Obx(() => TextFormField(...))

关于flutter - 如何在一个值上使用 GetX?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67439799/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com