Skip to content

Instantly share code, notes, and snippets.

View pedromassango's full-sized avatar

Pedro Massango pedromassango

View GitHub Profile
@pedromassango
pedromassango / slipt_screen_in_two_parts.dart
Created December 27, 2018 23:11
This code split a flutter app into two parts.
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Positioned(
top: 0,
bottom: MediaQuery.of(context).size.height / 2,
width: double.maxFinite,
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Sliding Login',
@pedromassango
pedromassango / sample.dart
Created March 12, 2019 23:07
TitledBottomNavigationBar implementation sample
bottomNavigationBar: TitledBottomNavigationBar(
onTap: (index){
print("Selected Index: $index");
},
items: [
TitledNavigationBarItem(title: 'Home', icon: Icons.home),
TitledNavigationBarItem(title: 'Search', icon: Icons.search),
TitledNavigationBarItem(title: 'Bag', icon: Icons.card_travel),
TitledNavigationBarItem(title: 'Orders', icon: Icons.shopping_cart),
TitledNavigationBarItem(title: 'Profile', icon: Icons.person_outline),
bottomNavigationBar: TitledBottomNavigationBar(
onTap: (index){
print("Selected Index: $index");
},
items: items,
reverse: true,
)
@pedromassango
pedromassango / search_app_bar.dart
Created June 2, 2019 21:36
Fixed issue of Search App Bar
import 'package:flutter/material.dart';
void main() => runApp(SearchAppBar());
class SearchAppBar extends StatefulWidget {
@override
_SearchAppBarState createState() => new _SearchAppBarState();
}
class _SearchAppBarState extends State<SearchAppBar> {
@pedromassango
pedromassango / custom_clipper_example.dart
Created June 4, 2019 23:30
CustomClipper - Exemplo
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
if (state is PhoneLoginCodeSent) {
// code no navigate
SchedulerBinding.instance.addPostFrameCallback((_) {
Navigator.of(context).push(...);
});
}
class NavigatorBloc extends Bloc<NavigatorAction, dynamic>{
final GlobalKey<NavigatorState> navigatorKey;
NavigatorBloc({this.navigatorKey});
@override
dynamic get initialState => 0;
@override
Stream<dynamic> mapEventToState(NavigatorAction event) async* {
class _MyAppState extends State<MyApp> {
final GlobalKey<NavigatorState> _navigatorKey = GlobalKey();
@override
Widget build(BuildContext context) {
return BlocProvider<NavigatorBloc>(
bloc: NavigatorBloc(navigatorKey: _navigatorKey),
child: MaterialApp(
navigatorKey: _navigatorKey,
import 'package:flutter/material.dart';
import 'package:flutter_mobx/flutter_mobx.dart';
import 'package:mobx/mobx.dart';
part 'main.g.dart';
void main() => runApp(MyApp());
class CounterStore = CounterBase with _$CounterStore;