我尝试使用此代码在单击按钮时切换按钮的图标,问题是图标既不显示也不改变。
LibraTextField(
labelText: "Old Password",
leadingIcon: AssetsConstants.icLock,
trailingIcon: AssetsConstants.icUnSee,
obscureText: _obscureText,
onTap: iconStatus,),
LibraTextField(
labelText: "New Password",
leadingIcon: AssetsConstants.icLock,
trailingIcon: AssetsConstants.icUnSee,
obscureText: _obscureText,
onTap: iconStatus,),
LibraTextField(
labelText: "Confirm New Password",
leadingIcon: AssetsConstants.icLock,
trailingIcon: AssetsConstants.icUnSee,
obscureText: _obscureText,
onTap: iconStatus,),
变量声明
bool _obscureText = true;
bool _iconState = true;
var _trailingIcon;
void iconStatus() {
setState(() {
_obscureText = !_obscureText;
_iconState = !_iconState;
if (_iconState = true) {
_trailingIcon = AssetsConstants.icUnSee;
}
if (_iconState = false) {
_trailingIcon = AssetsConstants.icSee;
}
});
}