import 'package:bloc_example/screens/chat_room.dart'; import 'package:bloc_example/screens/escort_publish.dart'; import 'package:bloc_example/screens/existing_member_hidden_detail.dart'; import 'package:bloc_example/screens/messages_page.dart'; import 'package:bloc_example/screens/web_socket.dart'; import 'package:flutter/material.dart'; import 'pin_input_screen.dart'; import 'new_member_without_channel.dart'; import 'new_member_with_channel.dart'; import 'existing_member_hidden.dart'; class UserInterfaceList extends StatelessWidget { final List<_ScreenItem> items = [ _ScreenItem('Pin Input', PinInputScreen()), _ScreenItem('New Member Without Channel', NewMemberWithoutChannel()), _ScreenItem('New Member With Channel', NewMemberWithChannel()), _ScreenItem('Existing Member Hidden', ExistingMemberHidden()), _ScreenItem('Existing Member Hidden Detail', ExistingMemberHiddenDetail()), _ScreenItem('Chat Room', ChatRoom()), _ScreenItem('Messages', MessagesPage()), _ScreenItem('Escort Publish', EscortPublish()), _ScreenItem('Web Socket', WebSocketScreen()), ]; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('User Interface List'), ), body: ListView.separated( itemCount: items.length, separatorBuilder: (_, __) => Divider(height: 1), itemBuilder: (context, index) { final item = items[index]; return ListTile( title: Text(item.title), trailing: Icon(Icons.arrow_forward_ios), onTap: () { Navigator.push( context, MaterialPageRoute(builder: (_) => item.screen), ); }, ); }, ), ); } } class _ScreenItem { final String title; final Widget screen; _ScreenItem(this.title, this.screen); }