我在顫動中有自動計算的值框。這是代碼:
enum UnitType {
meter,
centimeter,
feet,
}
class Units extends StatelessWidget {
Units({Key? key}) : super(key: key);
final TextEditingController _feetController =
TextEditingController(text: '0');
final TextEditingController _centimeterController =
TextEditingController(text: '0');
final TextEditingController _meterController =
TextEditingController(text: '0');
void _convertUnit(UnitType type) {
double? ft = double.tryParse(_feetController.value.text) ?? 0;
double? cm = double.tryParse(_centimeterController.value.text) ?? 0;
double? m = double.tryParse(_meterController.value.text) ?? 0;
switch (type) {
case UnitType.feet:
_meterController.text = (ft / 3.281).toString();
_centimeterController.text = (ft * 30.48).toString();
break;
case UnitType.meter:
_centimeterController.text = (m * 100).toString();
_feetController.text = (m * 3.281).toString();
break;
case UnitType.centimeter:
_meterController.text = (cm / 100).toString();
_feetController.text = (cm / 30.48).toString();
break;
}
}
我在做什么的圖片: 
現在的問題是我無法更改提示文本顏色、對齊方式或任何其他裝飾。
Code其中textformfield:
Neumorphic(
style: NeumorphicStyle(
color: HexColor("E19D4D"),
depth: -3,
),
child: SizedBox(
width: MediaQuery.of(context).size.width / 2,
child: TextFormField(
controller: _feetController,
keyboardType: TextInputType.number,
onChanged: (_) => _convertUnit(UnitType.feet),
decoration: const InputDecoration(
border: InputBorder.none,
hintStyle: TextStyle(color: Colors.green),
),
),
),
),
Current Output:
這里輸入的文本顏色是黑色并左對齊。我希望文本為白色并居中對齊。
uj5u.com熱心網友回復:
使用此代碼我更改了一些東西,這就是您想要的方式。
Neumorphic(
style: NeumorphicStyle(
color: Colors.amber,
depth: -3,
),
child: SizedBox(
width: MediaQuery.of(context).size.width / 2,
child: TextFormField(
textAlign: TextAlign.center,
style: TextStyle(color: Colors.green),
controller: _feetController,
keyboardType: TextInputType.number,
decoration: const InputDecoration(
border: InputBorder.none,
hintStyle: TextStyle(color: Colors.green),
),
),
),
),
輸出 :
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/374027.html
上一篇:顫振中的最終模型屬性
