Build a great calculator app in iOS and Android with the same code using flutter


By using flutter, you totally can develop this app on iOS and Android with the same code.




Input Widgets

input widgets is all extends StatefulWidget, because they need to response the onTap gesture.

  • NumberButton. Rendering the number button (like 1,2,3…) and handling the onTap gesture.
  • OperatorButton. Rendering the operator button (like +,-,*…) and handling the onTap gesture.
  • ResultButton. Rendering the command button (like clear,equal…) and handling the onTap gesture.

Output Widgets

output widgets is all extends StatelessWidget, because they are just rendering.

  • ResultDisplay. Rendering the current result and changing display when user tap a number button.
  • HistoryBlock. Rendering the calculation histories and changing display every time when user tap a valid button.


CalculatorPage is extending StatefulWidget and holding the List of results.

CalculatorPage receives every input widgets onTap event, makes a logical calculation for these input,s and decide what to display to output widgets.


Written by James

A Flutter plugin for manipulating Android WindowManager LayoutParams

A simple and elegant Calculator app developer in Flutter