cherry_flutter 0.1.7 copy "cherry_flutter: ^0.1.7" to clipboard
cherry_flutter: ^0.1.7 copied to clipboard

flutter Personal tools, only for personal work and study, do not like to spray.

example/lib/main.dart

import 'package:cherry_flutter/widgets/field/chf_field.dart';
import 'package:example/demo/dialog.dart';
import 'package:example/demo/popup_menu.dart';
import 'package:flutter/material.dart';

import 'demo/action_sheet.dart';
import 'demo/appbar.dart';
import 'demo/button.dart';
import 'demo/divider.dart';
import 'demo/popup_menu_box.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: HomePage(),
    );
  }
}

class HomePage extends StatefulWidget {
  HomePage({Key? key}) : super(key: key);

  @override
  State<HomePage> createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  TextEditingController controller = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        backgroundColor: Colors.white,
        appBar: AppBar(title: Text('Cherry ui')),
        body: SingleChildScrollView(
          child: Container(
            width: double.infinity,
            padding: EdgeInsets.symmetric(vertical: 20, horizontal: 20),
            child: Wrap(
              runSpacing: 20,
              alignment: WrapAlignment.spaceBetween,
              children: [
                _Item(
                  title: 'button',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return ButtonPage();
                    }));
                  },
                ),
                _Item(
                  title: 'Divider',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return DividerDemo();
                    }));
                  },
                ),
                _Item(
                  title: 'ActionSheet',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return ActionSheetDemo();
                    }));
                  },
                ),
                _Item(
                  title: 'Dialog',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return DialogDemo();
                    }));
                  },
                ),
                _Item(
                  title: 'Popup menu',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return PopupMenuDemo();
                    }));
                  },
                ),
                _Item(
                  title: 'Popup menu box',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return PopupMenuBoxDemo();
                    }));
                  },
                ),
                _Item(
                  title: 'appbar',
                  onTap: () {
                    Navigator.push(context,
                        MaterialPageRoute(builder: (context) {
                      return AppBarDemo();
                    }));
                  },
                ),
                Container(
                  width: 300,
                  decoration: BoxDecoration(
                    border: Border.all(width: 1, color: Colors.grey),
                    borderRadius: BorderRadius.circular(5)
                  ),
                  child: CHField(
                    height: 36,
                    cursorColor: Colors.blue,
                    cursorWidth: 4,
                    cursorHeight: 20,
                    controller: TextEditingController(),
                    contentPadding: EdgeInsets.symmetric(horizontal: 10, vertical: 0),
                    hintText: '请输入密码',
                    hintStyle: TextStyle(fontSize: 14, color: Colors.red, height: 1.428, textBaseline: TextBaseline.alphabetic),
                  ),
                )
              ],
            ),
          ),
        ));
  }
}

class _Item extends StatelessWidget {
  final String title;
  final GestureTapCallback? onTap;

  const _Item({Key? key, required this.title, this.onTap}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: onTap,
      child: Container(
        width: 100,
        height: 100,
        alignment: Alignment.center,
        decoration: BoxDecoration(color: Colors.white, boxShadow: [
          BoxShadow(
            color: Colors.black12,
            blurRadius: 10.0,
            spreadRadius: 0,
            offset: Offset(0, 2),
          )
        ]),
        child: Text(title),
      ),
    );
  }
}
0
likes
110
pub points
53%
popularity

Publisher

unverified uploader

flutter Personal tools, only for personal work and study, do not like to spray.

Homepage

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

flutter

More

Packages that depend on cherry_flutter