It is the normal behavior of iOS. The first "done" button you're talking about is just a "hide my keyboard" button. It will not do anything else.
In Flutter you can try to add a "keyboardType" parameters:
TextField(
keyboardType: TextInputType.***,
),
I can't try on an iOS as I don't have one. But try different TextInputType, you may be able to remove this done button.
More info : https://stackoverflow.com/a/75842595/9990911 https://api.flutter.dev/flutter/services/TextInputType-class.html