prasule/lib/pw/platformwidget.dart
2024-02-12 16:32:16 +01:00

27 lines
750 B
Dart

import 'dart:io';
import 'package:flutter/material.dart';
/// Abstract class used to create widgets for the respective platform UI library
abstract class PlatformWidget<A extends Widget, I extends Widget>
extends StatelessWidget {
/// Abstract class used to create widgets
/// for the respective platform UI library
const PlatformWidget({super.key});
@override
Widget build(BuildContext context) {
if (Platform.isIOS || Platform.isMacOS) {
return createIosWidget(context);
} else {
return createAndroidWidget(context);
}
}
/// The widget that will be shown on Android
A createAndroidWidget(BuildContext context);
/// The widget that will be shown on iOS
I createIosWidget(BuildContext context);
}