import 'package:example/extension/example_num_ext.dart'; import 'package:example/extension/example_string_ext.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; class MainExtention extends StatefulWidget { MainExtention({Key key}) : super(key: key); @override _MainExtentionState createState() => _MainExtentionState(); } class _MainExtentionState extends State { _innerButton({ VoidCallback onPressed, Widget child, Widget icon, }) { return TextButton( onPressed: onPressed, child: Row( children: [ Expanded(child: icon ?? SizedBox()), child, Spacer(), ], ), ); } @override Widget build(BuildContext context) { return ListView( padding: EdgeInsets.all(16.w), children: [ _innerButton( onPressed: () => Get.to(ExampleNumExt()), child: Text('Num Ext'), icon: Icon(Icons.filter_9), ), _innerButton( onPressed: () => Get.to(ExampleStringExt()), child: Text('String Ext'), icon: Icon(Icons.text_fields), ), ], ); } }