Skip to content

Instantly share code, notes, and snippets.

@rena2019
rena2019 / main.dart
Created September 15, 2025 05:43
Flutter showDialog
// showDialog
/*
onPressed: () {
showDialog(
context: context,
builder: (context) {
return Dialog(
child: Text('DIALOG'),
);
},
@rena2019
rena2019 / main.dart
Created September 10, 2025 11:56
Flutter Shadow with CustomPainter
import 'package:flutter/material.dart';
//Flutter Shadow with CustomPainter
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@rena2019
rena2019 / main.dart
Last active September 10, 2025 07:40
Button with BoxDecoration
//Button with BoxDecoration
//Button with BoxDecoration
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@rena2019
rena2019 / main.dart
Last active September 5, 2025 17:59
Flutter Animation/Tween (replace Widget) 2
// Flutter Animation/Tween (replace Widget) 2
import 'package:flutter/material.dart';
void main() => runApp(TimeSlideApp());
class TimeSlideApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
@rena2019
rena2019 / main.dart
Created September 5, 2025 17:33
Flutter Animation/Tween (replace Widget)
// Flutter Animation/Tween (replace Widget)
import 'package:flutter/material.dart';
import 'package:intl/intl.dart'; // add intl in pubspec.yaml oder entfernen und eigene Formatierung nutzen
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
@rena2019
rena2019 / main.dart
Created September 4, 2025 18:02
Flutter (broadcast) StreamController
// Flutter (broadcast) StreamController
import 'dart:async';
void main() async {
// Broadcast allows multiple listeners
final controller = StreamController<int>.broadcast();
// Listener A
final subA = controller.stream.listen(
@rena2019
rena2019 / main.dart
Last active September 4, 2025 17:39
Flutter Stream pause, resume, cancel
// Flutter Stream pause, resume, cancel
Stream<String> myStream() async* {
for (int i = 1; i < 10; i++) {
await Future.delayed(Duration(seconds: 1));
yield "VALUE: $i";
}
}
void main() async {
@rena2019
rena2019 / main.dart
Created September 4, 2025 17:11
Flutter Stream example
import 'dart:async';
import 'package:flutter/material.dart';
//wrapper class for progress + data
class DataWithProgress<T> {
final T? data;
final int progress; // 0..100
final Object? error;
final bool done;
@rena2019
rena2019 / main.dart
Created September 3, 2025 04:28
Riverpod FutureProvider.autoDispose.family example with card image list
// Add these dependencies to your pubspec.yaml file:
// dependencies:
// flutter:
// sdk: flutter
// flutter_riverpod: ^2.5.1
// http: ^1.2.1
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
@rena2019
rena2019 / main.dart
Last active August 22, 2025 09:28
Riverpod AsyncNotifier/AsyncValue (List)
import 'dart:math';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
// Riverpod AsyncNotifier/AsyncValue (List)
final _rng = Random();
Future<String> fetchItem(int id) async {
await Future.delayed(Duration(milliseconds: 500 + _rng.nextInt(900)));