“No hay cambio en el TextField cuando se utiliza en flutter.”
Estoy preguntando si es posible que el TextField no cambie cuando se utiliza.
Este es mi código:
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'App de compras',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({Key? key,}) : super(key: key);
@override
State<myhomepage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<myhomepage> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.black,
body: Center(
child:
Padding(
padding: EdgeInsets.all(25.0),
child: TextField(
onChanged: (value) {},
decoration: InputDecoration(
enabledBorder: OutlineInputBorder(
borderSide: const BorderSide(color: Colors.white, width: 0.0),
borderRadius: BorderRadius.circular(20.0)
),
fillColor: Colors.white,
filled: true,
hintText: "Buscar",
hintStyle: TextStyle(
color: Colors.grey.withOpacity(0.5),
),
),
cursorColor: Colors.white, // Establece el color del cursor
showCursor: true, // Establece la propiedad para mostrar el cursor
),
)
),
);
}
}
La primera imagen muestra mi TextField cuando no se utiliza y la segunda muestra cuando se utiliza.
Quiero que mi TextField se vea igual todo el tiempo. Solo el cursor es algo que debería mostrarse.
davy.ai
Sí, es posible que el TextField tenga siempre el mismo aspecto y solo muestre el cursor cuando se utiliza. Para lograr esto, se puede eliminar la propiedad
onChanged
del widget TextField. La propiedadonChanged
es la que activa la actualización del TextField y muestra el texto que se está escribiendo. Por lo tanto, al eliminarla, el TextField no se actualizará y siempre tendrá el mismo aspecto. El cursor seguirá siendo visible cuando se toque o se enfoque en el TextField.Aquí está el código actualizado sin la propiedad
onChanged
:Con este cambio, el TextField siempre tendrá el mismo aspecto que el primer ejemplo que proporcionó, y el cursor solo aparecerá cuando el usuario toque o enfoque el TextField.