ajustes de layout
This commit is contained in:
@@ -13,7 +13,7 @@ class MyApp extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
return MaterialApp(
|
||||
debugShowCheckedModeBanner: false,
|
||||
title: 'Controle de Acesso',
|
||||
title: 'CONTROLE DE ACESSO',
|
||||
home: LoginScreen(),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -2,8 +2,8 @@ import 'package:educa_controle_acesso/utils/colors.dart';
|
||||
import 'package:educa_controle_acesso/widgets/input_text.dart';
|
||||
import 'package:educa_controle_acesso/widgets/text_custom.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import '../models/aluno_model.dart';
|
||||
import '../widgets/buttom_custom.dart';
|
||||
import '../widgets/dados_alunos_container.dart';
|
||||
|
||||
class HomeScreen extends StatefulWidget {
|
||||
@@ -18,10 +18,18 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
var controllerPesquisa = TextEditingController();
|
||||
List<AlunoModel> alunos = [];
|
||||
List resultadoPesquisa = [];
|
||||
bool filtroEstudante = false;
|
||||
bool filtroData = false;
|
||||
bool filtroRA = false;
|
||||
bool filtroSerie = false;
|
||||
bool filtroTurma = false;
|
||||
bool filtroEscola = false;
|
||||
|
||||
carregarAlunos(){
|
||||
alunos.add(AlunoModel(nome: 'Maria da Silva', data_nasc: '01/01/2010', ra: '000.000.000-8', escola: 'EMEI Profª Therezinha de Jesus Alguz', serie: '8', turma: 'A'));
|
||||
alunos.add(AlunoModel(nome: 'Pedro Costa Almeida', data_nasc: '01/01/2015', ra: '111.111.111-5', escola: 'EMEI Profª Enestina Loureiro Miranda', serie: '7', turma: 'C'));
|
||||
alunos=[
|
||||
AlunoModel(nome: 'Maria da Silva', data_nasc: '01/01/2010', ra: '000.000.000-8', escola: 'EMEI Profª Therezinha de Jesus Alguz', serie: '8', turma: 'A'),
|
||||
AlunoModel(nome: 'Pedro Costa Almeida', data_nasc: '01/01/2015', ra: '111.111.111-5', escola: 'EMEI Profª Enestina Loureiro Miranda', serie: '7', turma: 'C')
|
||||
];
|
||||
pesquisarAluno();
|
||||
}
|
||||
|
||||
@@ -47,8 +55,14 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
}
|
||||
}
|
||||
}else{
|
||||
for(int i = 0;i<10;i++){
|
||||
resultadoPesquisa.add(alunos[i]);
|
||||
if(alunos.length<10){
|
||||
for(int i = 0;i<alunos.length;i++){
|
||||
resultadoPesquisa.add(alunos[i]);
|
||||
}
|
||||
}else{
|
||||
for(int i = 0;i<10;i++){
|
||||
resultadoPesquisa.add(alunos[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
setState(() {});
|
||||
@@ -74,7 +88,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
Container(
|
||||
child: Image.asset("assets/images/logoEduca.png",width:width * 0.08,height: height * 0.12)
|
||||
),
|
||||
TextCustom(text: '- Pesquisar aluno',color: Colors.white,),
|
||||
TextCustom(text: '- PESQUISAR ALUNO',color: Colors.white,),
|
||||
],
|
||||
),
|
||||
backgroundColor: PaletteColors.grey,
|
||||
@@ -85,20 +99,169 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
children: [
|
||||
SizedBox(height: height*0.05),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: width>900?width*0.3:width*0.05),
|
||||
child: InputText(controller: controllerPesquisa, width: width*0.2,title: 'Pesquisar Aluno(a)',inputFormatters: [],)
|
||||
padding: EdgeInsets.symmetric(horizontal: width>900?width*0.15:width*0.05),
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
InputText(
|
||||
hint: 'Pesquisar por estudante, RA ou data de nascimento'.toUpperCase(),
|
||||
controller: controllerPesquisa,
|
||||
width: width*0.25,
|
||||
inputFormatters: [],
|
||||
fontSize: 12,
|
||||
colorBackground: Colors.white,
|
||||
),
|
||||
ButtonCustom(
|
||||
widthCustom: 0.05,
|
||||
heightCustom: 0.063,
|
||||
text: "LIMPAR",
|
||||
size: 10.0,
|
||||
colorText: PaletteColors.white,
|
||||
colorButton: PaletteColors.primaryColor,
|
||||
colorBorder: PaletteColors.primaryColor,
|
||||
onPressed: ()=>setState(()=>controllerPesquisa.clear()),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
padding: EdgeInsets.symmetric(horizontal: width>900?width*0.3:width*0.05),
|
||||
margin: EdgeInsets.symmetric(vertical: 20),
|
||||
padding: EdgeInsets.symmetric(horizontal: width>900?width*0.15:width*0.05),
|
||||
width: width,
|
||||
alignment: Alignment.center,
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
width: width*0.2,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'ESTUDANTE',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroEstudante?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroEstudante?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroEstudante?filtroEstudante=false:filtroEstudante=true;
|
||||
filtroData = false;
|
||||
filtroRA = false;
|
||||
filtroSerie = false;
|
||||
filtroTurma = false;
|
||||
filtroEscola = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
width: width*0.1,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'DATA DE NASCIMENTO',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroData?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroData?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroData?filtroData=false:filtroData=true;
|
||||
filtroEstudante = false;
|
||||
filtroRA = false;
|
||||
filtroSerie = false;
|
||||
filtroTurma = false;
|
||||
filtroEscola = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
width: width*0.08,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'RA',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroRA?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroRA?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroRA?filtroRA=false:filtroRA=true;
|
||||
filtroData = false;
|
||||
filtroEstudante = false;
|
||||
filtroSerie = false;
|
||||
filtroTurma = false;
|
||||
filtroEscola = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
width: width*0.05,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'Série',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroSerie?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroSerie?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroSerie?filtroSerie=false:filtroSerie=true;
|
||||
filtroData = false;
|
||||
filtroRA = false;
|
||||
filtroEstudante = false;
|
||||
filtroTurma = false;
|
||||
filtroEscola = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
width: width*0.05,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'Turma',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroTurma?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroTurma?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroTurma?filtroTurma=false:filtroTurma=true;
|
||||
filtroData = false;
|
||||
filtroRA = false;
|
||||
filtroSerie = false;
|
||||
filtroEstudante = false;
|
||||
filtroEscola = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
Container(
|
||||
width: width*0.15,
|
||||
child: Row(
|
||||
children: [
|
||||
TextCustom(text: 'Escola',size: 12,fontWeight: FontWeight.bold,color: Colors.black87,),
|
||||
IconButton(
|
||||
icon: Icon(filtroEscola?Icons.arrow_drop_up:Icons.arrow_drop_down,color: filtroEscola?PaletteColors.primaryColor:PaletteColors.grey,),
|
||||
onPressed: ()=>setState((){
|
||||
filtroEscola?filtroEscola=false:filtroEscola=true;
|
||||
filtroData = false;
|
||||
filtroRA = false;
|
||||
filtroSerie = false;
|
||||
filtroTurma = false;
|
||||
filtroEstudante = false;
|
||||
}),
|
||||
)
|
||||
],
|
||||
)
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Container(
|
||||
padding: EdgeInsets.symmetric(horizontal: width>900?width*0.15:width*0.05),
|
||||
width: width*0.5,
|
||||
height: height*0.5,
|
||||
height: height*0.8,
|
||||
child: ListView.separated(
|
||||
separatorBuilder: (context,index){
|
||||
return Divider();
|
||||
},
|
||||
itemCount: resultadoPesquisa.length,
|
||||
itemBuilder:(context,index){
|
||||
return DadosAlunosContainer(alunoModel: resultadoPesquisa[index],);
|
||||
|
||||
final items = filtroEstudante||filtroData||filtroRA||filtroSerie||filtroTurma||filtroEscola?resultadoPesquisa.reversed.toList():resultadoPesquisa;
|
||||
|
||||
return DadosAlunosContainer(alunoModel: items[index]);
|
||||
}
|
||||
),
|
||||
)
|
||||
|
||||
@@ -96,7 +96,7 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
child: InputText(
|
||||
inputFormatters: [],
|
||||
controller: inputLogin,
|
||||
title: 'Login',
|
||||
title: 'LOGIN',
|
||||
width: width>900? width * 0.18:width*0.5,
|
||||
colorBorder: PaletteColors.white,
|
||||
),
|
||||
@@ -107,7 +107,7 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
child: InputText(
|
||||
inputFormatters: [],
|
||||
controller: inputSenha,
|
||||
title: 'Senha',
|
||||
title: 'SENHA',
|
||||
obscure: true,
|
||||
width: width * 0.18,
|
||||
colorBorder: PaletteColors.white,
|
||||
@@ -119,12 +119,12 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
children: [
|
||||
CircularProgressIndicator(),
|
||||
SizedBox(width: 20,),
|
||||
TextCustom(text: 'Validando Acesso...')
|
||||
TextCustom(text: 'VALIDANDO ACESSO...')
|
||||
],
|
||||
):ButtonCustom(
|
||||
widthCustom: 0.1,
|
||||
heightCustom: 0.07,
|
||||
text: "Entrar",
|
||||
text: "ENTRAR",
|
||||
size: 14.0,
|
||||
colorText: PaletteColors.white,
|
||||
colorButton: PaletteColors.primaryColor,
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:get/get.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import '../utils/colors.dart';
|
||||
import '../widgets/buttom_custom.dart';
|
||||
import '../widgets/caixa_texto_container.dart';
|
||||
import '../widgets/input_text.dart';
|
||||
import '../widgets/snackBars.dart';
|
||||
import '../widgets/text_custom.dart';
|
||||
@@ -114,12 +115,22 @@ class _ResponsibleRegisterScreenState extends State<ResponsibleRegisterScreen> {
|
||||
body: Padding(
|
||||
padding: const EdgeInsets.all(30.0),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextCustom(text: 'Aluno(a): ${widget.alunoModel.nome}'),
|
||||
TextCustom(text: 'Turma: ${widget.alunoModel.serie}° ANO ${widget.alunoModel.turma}'),
|
||||
TextCustom(text: 'RA: ${widget.alunoModel.ra}'),
|
||||
TextCustom(text: 'Escola: ${widget.alunoModel.escola}'),
|
||||
Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
CaixaTextoContainer(texto: widget.alunoModel.nome.toUpperCase(),titulo: 'Estudante'),
|
||||
CaixaTextoContainer(texto: widget.alunoModel.serie.toUpperCase()+'°',titulo: 'Série',),
|
||||
CaixaTextoContainer(texto: widget.alunoModel.turma.toUpperCase(),titulo: 'Turma',),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
CaixaTextoContainer(texto: widget.alunoModel.ra.toUpperCase(),titulo: 'RA'),
|
||||
CaixaTextoContainer(texto: widget.alunoModel.escola.toUpperCase(),titulo: 'Escola',),
|
||||
],
|
||||
),
|
||||
SizedBox(height: 50,),
|
||||
Row(
|
||||
children: [
|
||||
@@ -250,34 +261,35 @@ class _ResponsibleRegisterScreenState extends State<ResponsibleRegisterScreen> {
|
||||
),
|
||||
):Container(),
|
||||
showRegister?Container():Container(
|
||||
width: width*0.3,
|
||||
alignment: Alignment.centerLeft,
|
||||
width: width,
|
||||
height: height*0.3,
|
||||
child: ListView.separated(
|
||||
itemCount: responsaveis.length,
|
||||
separatorBuilder: (context,index){
|
||||
return Divider();
|
||||
},
|
||||
itemBuilder: (context,index){
|
||||
return DadosResponsaveisContainer(
|
||||
responsavelModel: responsaveis[index],
|
||||
onTapEdit: (){
|
||||
showRegister = true;
|
||||
editando = true;
|
||||
indice = index;
|
||||
inputNome.text = responsaveis[index].nomeResponsavel;
|
||||
inputParentesco.text = responsaveis[index].parentesco;
|
||||
inputCpf.text = responsaveis[index].cpf;
|
||||
inputSenha.text = responsaveis[index].senha;
|
||||
inputData.text = responsaveis[index].dataCadastro;
|
||||
setState(() {});
|
||||
},
|
||||
onTapDelete: (){
|
||||
responsaveis.removeAt(index);
|
||||
setState(() {});
|
||||
showSnackBar(context, 'Responsável deletado!', Colors.green);
|
||||
},
|
||||
);
|
||||
}
|
||||
itemCount: responsaveis.length,
|
||||
separatorBuilder: (context,index){
|
||||
return Divider();
|
||||
},
|
||||
itemBuilder: (context,index){
|
||||
return DadosResponsaveisContainer(
|
||||
responsavelModel: responsaveis[index],
|
||||
onTapEdit: (){
|
||||
showRegister = true;
|
||||
editando = true;
|
||||
indice = index;
|
||||
inputNome.text = responsaveis[index].nomeResponsavel;
|
||||
inputParentesco.text = responsaveis[index].parentesco;
|
||||
inputCpf.text = responsaveis[index].cpf;
|
||||
inputSenha.text = responsaveis[index].senha;
|
||||
inputData.text = responsaveis[index].dataCadastro;
|
||||
setState(() {});
|
||||
},
|
||||
onTapDelete: (){
|
||||
responsaveis.removeAt(index);
|
||||
setState(() {});
|
||||
showSnackBar(context, 'Responsável deletado!', Colors.green);
|
||||
},
|
||||
);
|
||||
}
|
||||
),
|
||||
),
|
||||
],
|
||||
|
||||
39
lib/widgets/caixa_texto_container.dart
Normal file
39
lib/widgets/caixa_texto_container.dart
Normal file
@@ -0,0 +1,39 @@
|
||||
import 'package:educa_controle_acesso/widgets/text_custom.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import '../utils/colors.dart';
|
||||
|
||||
class CaixaTextoContainer extends StatelessWidget {
|
||||
String texto;
|
||||
String titulo;
|
||||
double widthCustom;
|
||||
|
||||
CaixaTextoContainer({
|
||||
required this.texto,
|
||||
required this.titulo,
|
||||
this.widthCustom = 0.2
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
double width = MediaQuery.of(context).size.width;
|
||||
return Container(
|
||||
margin: EdgeInsets.all(5),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextCustom(text: titulo,size: 12,),
|
||||
Container(
|
||||
child: TextCustom(text: texto),
|
||||
width: width*widthCustom,
|
||||
padding: EdgeInsets.all(5),
|
||||
decoration: BoxDecoration(
|
||||
color: PaletteColors.greyInput,
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
border: Border.all(color: PaletteColors.lightGrey)
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@ import 'package:educa_controle_acesso/screens/responsible_register_screen.dart';
|
||||
import 'package:educa_controle_acesso/widgets/text_custom.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import '../utils/colors.dart';
|
||||
import 'caixa_texto_container.dart';
|
||||
|
||||
class DadosAlunosContainer extends StatelessWidget {
|
||||
|
||||
@@ -14,7 +15,11 @@ class DadosAlunosContainer extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
|
||||
double width = MediaQuery.of(context).size.width;
|
||||
|
||||
return InkWell(
|
||||
hoverColor: PaletteColors.lightGrey,
|
||||
onTap: (){
|
||||
Navigator.push(
|
||||
context,
|
||||
@@ -22,34 +27,37 @@ class DadosAlunosContainer extends StatelessWidget {
|
||||
);
|
||||
},
|
||||
child: Container(
|
||||
padding: EdgeInsets.symmetric(vertical: 10,horizontal: 5),
|
||||
padding: EdgeInsets.symmetric(vertical: 10,horizontal: 0),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextCustom(
|
||||
text: 'Nome: '+alunoModel.nome,
|
||||
color: PaletteColors.grey,
|
||||
size: 20,
|
||||
),
|
||||
TextCustom(
|
||||
text: 'Data de Nascimento: '+alunoModel.data_nasc,
|
||||
color: PaletteColors.grey,
|
||||
size: 15,
|
||||
),
|
||||
TextCustom(
|
||||
text: 'RA: '+alunoModel.ra,
|
||||
color: PaletteColors.grey,
|
||||
size: 15,
|
||||
),
|
||||
TextCustom(
|
||||
text: 'Turma: '+alunoModel.serie+'° ANO '+alunoModel.turma,
|
||||
color: PaletteColors.grey,
|
||||
size: 15,
|
||||
),
|
||||
TextCustom(
|
||||
text: 'Escola: '+alunoModel.escola,
|
||||
color: PaletteColors.grey,
|
||||
size: 15,
|
||||
Row(
|
||||
children: [
|
||||
Container(
|
||||
width: width*0.2,
|
||||
child: TextCustom(text: alunoModel.nome.toUpperCase())
|
||||
),
|
||||
Container(
|
||||
width: width*0.1,
|
||||
child: TextCustom(text: alunoModel.data_nasc.toUpperCase())
|
||||
),
|
||||
Container(
|
||||
width: width*0.08,
|
||||
child: TextCustom(text: alunoModel.ra.toUpperCase())
|
||||
),
|
||||
Container(
|
||||
width: width*0.05,
|
||||
child: TextCustom(text: alunoModel.serie.toUpperCase()+'°')
|
||||
),
|
||||
Container(
|
||||
width: width*0.05,
|
||||
child: TextCustom(text: alunoModel.turma.toUpperCase())
|
||||
),
|
||||
Container(
|
||||
width: width*0.20,
|
||||
child: TextCustom(text: alunoModel.escola.toUpperCase())
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:educa_controle_acesso/screens/responsible_register_screen.dart';
|
||||
import 'package:educa_controle_acesso/widgets/text_custom.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import '../utils/colors.dart';
|
||||
import 'caixa_texto_container.dart';
|
||||
|
||||
class DadosResponsaveisContainer extends StatelessWidget {
|
||||
|
||||
@@ -31,12 +32,13 @@ class DadosResponsaveisContainer extends StatelessWidget {
|
||||
icon: Icon(Icons.delete,color: PaletteColors.grey,),
|
||||
),
|
||||
Container(
|
||||
width: width*0.15,
|
||||
width: width*0.35,
|
||||
padding: EdgeInsets.symmetric(vertical: 10,horizontal: 5),
|
||||
child: TextCustom(
|
||||
text: '${responsavelModel.nomeResponsavel}, ${responsavelModel.parentesco}',
|
||||
color: PaletteColors.grey,
|
||||
size: 15,
|
||||
child: Row(
|
||||
children: [
|
||||
CaixaTextoContainer(texto: responsavelModel.nomeResponsavel,titulo: 'Nome',widthCustom: 0.15),
|
||||
CaixaTextoContainer(texto: responsavelModel.parentesco,titulo: 'Parentesco',widthCustom: 0.1,),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import 'package:educa_controle_acesso/utils/colors.dart';
|
||||
import 'package:educa_controle_acesso/widgets/text_custom.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
@@ -7,10 +8,12 @@ class InputText extends StatelessWidget {
|
||||
var controller;
|
||||
double fontSize;
|
||||
String title;
|
||||
String hint;
|
||||
double width;
|
||||
TextInputType textInputType;
|
||||
int maxLines;
|
||||
Color colorBorder;
|
||||
Color colorBackground;
|
||||
var onChanged;
|
||||
bool enable;
|
||||
List<TextInputFormatter> inputFormatters;
|
||||
@@ -21,9 +24,11 @@ class InputText extends StatelessWidget {
|
||||
this.obscure = false,
|
||||
this.fontSize = 15.0,
|
||||
this.title = '',
|
||||
this.hint = '',
|
||||
this.textInputType = TextInputType.text,
|
||||
this.maxLines = 1,
|
||||
this.colorBorder = PaletteColors.grey,
|
||||
this.colorBackground = PaletteColors.greyInput,
|
||||
this.onChanged = null,
|
||||
this.enable = true,
|
||||
required this.inputFormatters
|
||||
@@ -31,47 +36,54 @@ class InputText extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
color:PaletteColors.greyInput,
|
||||
width: width,
|
||||
margin: EdgeInsets.only(bottom: 5),
|
||||
child: TextFormField(
|
||||
inputFormatters: inputFormatters,
|
||||
keyboardType: textInputType,
|
||||
maxLines: maxLines,
|
||||
onChanged: onChanged,
|
||||
obscureText: this.obscure,
|
||||
controller: this.controller,
|
||||
enabled: enable,
|
||||
style: TextStyle(
|
||||
color: Colors.black,
|
||||
fontSize: this.fontSize,
|
||||
fontFamily: 'Nunito'
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
TextCustom(text: title,size: 10),
|
||||
Container(
|
||||
color:colorBackground,
|
||||
width: width,
|
||||
margin: EdgeInsets.only(bottom: 5),
|
||||
child: TextFormField(
|
||||
inputFormatters: inputFormatters,
|
||||
keyboardType: textInputType,
|
||||
maxLines: maxLines,
|
||||
onChanged: onChanged,
|
||||
obscureText: this.obscure,
|
||||
controller: this.controller,
|
||||
enabled: enable,
|
||||
style: TextStyle(
|
||||
color: Colors.black,
|
||||
fontSize: this.fontSize,
|
||||
fontFamily: 'Nunito'
|
||||
),
|
||||
decoration: InputDecoration(
|
||||
// fillColor: PaletteColors.primaryColor,
|
||||
// labelText: title,
|
||||
border: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1,color: colorBorder)
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
hintText: hint,
|
||||
hintStyle: TextStyle(
|
||||
color: PaletteColors.grey,
|
||||
fontSize: this.fontSize,
|
||||
)
|
||||
)
|
||||
),
|
||||
),
|
||||
decoration: InputDecoration(
|
||||
// fillColor: PaletteColors.primaryColor,
|
||||
labelText: title,
|
||||
border: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1,color: colorBorder)
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
enabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
disabledBorder: OutlineInputBorder(
|
||||
borderSide: BorderSide(width: 1, color: colorBorder),
|
||||
borderRadius: BorderRadius.circular(3),
|
||||
),
|
||||
hintStyle: TextStyle(
|
||||
color: Colors.black,
|
||||
fontSize: this.fontSize,
|
||||
)
|
||||
)
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user