Я хочу добавить текстовое поле в нижнюю панель приложений. Я использовал нижнюю часть и PreferredSize на панели приложений, но текстовое поле все еще не отображается.
это изображение введите сюда описание изображения
и это все код
import 'package:flutter/material.dart';
import '../../utils/utils.dart';
class MaterialRequestScreen extends StatefulWidget {
const MaterialRequestScreen({super.key});
@override
State<MaterialRequestScreen> createState() => _MaterialRequestScreenState();
}
class _MaterialRequestScreenState extends State<MaterialRequestScreen> {
TextEditingController searchC = TextEditingController();
@override
void initState() {
searchC.text = 'hallo';
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(AppStrings.materialRequest),
centerTitle: true,
backgroundColor: AppColor.neutral50,
bottomOpacity: 0.0,
bottom: PreferredSize(
preferredSize: Size.fromHeight(kToolbarHeight),
child: Container(
color: Colors.red,
child: TextField(
controller: searchC,
decoration: InputDecoration(
filled: true,
fillColor: AppColor.neutral500,
prefixIcon: Icon(Icons.search),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(8.0),
borderSide: BorderSide.none,
),
hintText: 'Search...',
),
),
)),
),
);
}
}
мне это нравится введите сюда описание изображения
AppBar(
toolbarHeight: 80,
title: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text("Title"),
TextField(
decoration: InputDecoration(hintText: "Your text"),
)
],
),
),
попробуйте этот код
Scaffold(
appBar: PreferredSize(
preferredSize: Size.fromHeight(120.0), // Set the height of the AppBar
child: AppBar(
automaticallyImplyLeading: false, // Removes default back button
flexibleSpace: Column(
mainAxisAlignment: MainAxisAlignment.end,
children: [
AppBar(
automaticallyImplyLeading: true, // Adds back button
title: Text('Material Request'),
elevation: 0,
),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
child: Container(
height: 40,
decoration: BoxDecoration(
color: Colors.grey[200],
borderRadius: BorderRadius.circular(8.0),
),
child: TextField(
decoration: InputDecoration(
hintText: 'Search for an item',
border: InputBorder.none,
prefixIcon: Icon(Icons.search),
),
),
),
),
],
),
elevation: 0,
),
),
body: Center(
child: Text('Body Content'),
),
вы получите примерно такие результаты: