#flutter #android-studio #dart
#flutter #android-studio #dart
Вопрос:
Я новичок в Flutter, учусь самостоятельно. Я создаю проект приложения с книгами. На странице книги есть баннер заголовка, под ним DropDownButton и текст главы книги.
Текст глав перемещается в отдельный класс строк (Vincenco) и реализуется через текст.
Вопрос: как заставить DropDownButton изменить строку (texto1) на другую строку (texto2)?
P.s. ‘texto1a’ и ‘texto2a’ — это названия главы книги над текстом главы
class _BookMainWidgetState extends State<BookMainWidget> {
String texto1 = Vincenco.v1;
String texto1a = Vincenco.v1a;
String texto2 = Vincenco.v2;
String texto2a = Vincenco.v2a;
var _locations = [
'Глава 1',
'Глава 2',
'Глава 3',
'Глава 4',
'Глава 5',
];
var _currentItemSelected = 'Глава 1';
@override
Widget build(BuildContext context) {
return Stack(
children: [
Padding(
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
child: Stack(
children: [
Container(
decoration: BoxDecoration(
color: Colors.white,
border: Border.all(color: Colors.black.withOpacity(0.2)),
borderRadius: BorderRadius.all(Radius.circular(10)),
boxShadow: [
BoxShadow(
color: Colors.black.withOpacity(0.2),
blurRadius: 8,
offset: Offset(0, 3),
),
],),
clipBehavior: Clip.hardEdge,
child: Row(
children: [
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
DropdownButton(
hint: Text(' Выберите главу...'),
isExpanded: true,
onChanged: (newValue) {},
value: _currentItemSelected,
items: _locations.map((
String dropDownStringItem) {
return new DropdownMenuItem<String>(
value: dropDownStringItem,
child: new Text(dropDownStringItem),
);
}).toList()
),
SizedBox(height: 10),
Column(
children: [
Padding(
padding: const EdgeInsets.all(
8.0),
child:
Text(texto1a,
style: TextStyle(
color: Colors.brown,
fontSize: 16,
fontWeight: FontWeight
.bold),
),
),
Padding(
padding: const EdgeInsets.all(
8.0),
child:
Text(texto1,
style: TextStyle(fontSize: 14,
fontWeight: FontWeight
.bold),
),
),
]
),
Комментарии:
1. codesinsider.com/flutter-dropdown-button-example
2. Конструкция DropDownButton мне понятна. Меня интересует, как заставить его изменить значение текста в другом виджете
3. итак, вы хотите, чтобы все, что выбрано в раскрывающемся списке, появлялось вместо предыдущего текста?
4. Да, точно. Выбранный элемент выпадающего списка изменил текстовое содержимое на соответствующий фрагмент