JustPaste
HomeCategoriesAboutDonateContactTerms of UsePrivacy Policy
JustPaste

Free online notepad — write and share instantly

Navigate

  • Home
  • Timeline
  • Categories

Info

  • About
  • Donate
  • Contact

Legal

  • Terms of Use
  • Privacy Policy

© 2026 JustPaste.app. All rights reserved.

Made with ♥ by JustPaste

Untitled Page | JustPaste.app
25 days ago4 views
👨‍💻Programming
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(useMaterial3: true),
      home: const MainScreen(),
      routes: {
        '/profile': (context) =>
            const Scaffold(body: Center(child: Text("Profile Screen"))),
        '/settings': (context) =>
            const Scaffold(body: Center(child: Text("Settings Screen"))),
        '/Help': (context) =>
            const Scaffold(body: Center(child: Text("Help Screen"))),
      },
    );
  }
}

class MainScreen extends StatefulWidget {
  const MainScreen({super.key});

  @override
  State<MainScreen> createState() => _MainScreenState();
}

class _MainScreenState extends State<MainScreen> {
  DateTime _date = DateTime.now();
  TimeOfDay _time = TimeOfDay.now();

  void _showDateDialog() async {
    DateTime? select = await showDatePicker(
      context: context,
      initialDate: _date,
      firstDate: DateTime(2000),
      lastDate: DateTime(2027),
      helpText: "SELECT DATE",
      cancelText: "CANCEL",
      confirmText: "SELECT",
    );

    if (select != null && select != _date) {
      setState(() {
        _date = select;
      });
    }
  }

  void _showTimeDialog() async {
    final TimeOfDay? select = await showTimePicker(
      context: context,
      initialTime: _time,
    );

    if (select != null && select != _time) {
      setState(() {
        _time = select;
      });
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text("navigation demos"),
        centerTitle: true,
        backgroundColor: Theme.of(context).colorScheme.primaryContainer,
      ),
      body: Column(
        children: [
          ListTile(
            leading: const Icon(Icons.cake),
            title: const Text("Birthday"),
            trailing: Text("${_date.year}-${_date.month}-${_date.day}"),
            onTap: _showDateDialog,
          ),
          ListTile(
            leading: const Icon(Icons.alarm),
            title: const Text("Alarm"),
            trailing: Text(_time.format(context)),
            onTap: _showTimeDialog,
          ),
          const Divider(),
          const Expanded(child: HomeScreen()),
        ],
      ),
    );
  }
}

class HomeScreen extends StatelessWidget {
  const HomeScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return DefaultTabController(
      length: 3,
      child: Column(
        children: [
          const TabBar(
            tabs: [
              Tab(icon: Icon(Icons.chat), text: "chat"),
              Tab(icon: Icon(Icons.group), text: "group"),
              Tab(icon: Icon(Icons.notifications), text: "notification"),
            ],
          ),
          const Expanded(
            child: TabBarView(
              children: [
                Center(child: Text("Chat view Screen")),
                Center(child: Text("friend view Screen")),
                Center(child: Text("notification view Screen")),
              ],
            ),
          ),
        ],
      ),
    );
  }
}
← Back to timeline