Я создаю приложения, которые содержат плавающую кнопку действия, которую я сделал с моей собственной настройкой, при ее нажатии под ней отображаются 3 значка меню.
Есть 2 проблемы:
- Когда ориентация меняется на альбомную, и мы нажимаем плавающую кнопку действия, она не отображается, вместо этого она будет отображаться, когда мы долго нажимаем, продолжить нет 2
- В текущей альбомной ориентации он отображается при долгом нажатии, как я уже сказал 1, и когда мы снова вернемся к портретному режиму, его нужно снова нажать и удерживать, чтобы он отобразился
Я пробовал несколько способов исправить это, но это все еще не работает.
Вот код и снимок экрана
При отображении портретного меню
При переключении на альбомную ориентацию значки меню отсутствуют, и нужно долго нажимать, чтобы сделать это show
for floatingActionButton
floatingActionButton: OrientationBuilder(
builder: (BuildContext context, Orientation orientation){
return orientation == Orientation.landscape
? _buildMenu(context)
: _buildMenu(context);
},
),
_buildMenu (), который вызывает floatActionButton
Widget _buildMenu(BuildContext context){
final icons = [ Icons.swap_vert, Icons.check_circle_outline, Icons.filter_list ];
var nowOrientation = MediaQuery.of(context).orientation;
var b = Container(
child: LayoutBuilder(
builder: (BuildContext context, BoxConstraints constraints){
return OverlayBuilder(
showOverlayTrue: true,
overlayBuild: (BuildContext overlayContext){
RenderBox box = context.findRenderObject() as RenderBox;
final center = box.size.center(box.localToGlobal(const Offset(0.8, 0.8)));
return new Positioned(
top: Offset(center.dx, center.dy - icons.length * 35.0).dy,
left: Offset(center.dx, center.dy - icons.length * 35.0).dx,
child: new FractionalTranslation(
translation: const Offset(-0.5, -0.6),
child: FabIcons(
icons: icons,
),
),
);
},
);
},
),
);}
Чтобы упростить просмотр, я поместил код на github
OverlayBuilder Class https://github.com/ubaidillahSriyudi/StackOverflowhelp/blob/master/OverlayBuilderClass
Fabic ons Class https://github.com/ubaidillahSriyudi/StackOverflowhelp/blob/master/FabIcons
Большое спасибо тому, кто смог помочь