ponshu-room-lite/lib/providers/navigation_provider.dart

23 lines
682 B
Dart

import 'package:flutter_riverpod/flutter_riverpod.dart';
/// 現在表示中のタブインデックスを管理するProvider
///
/// コーチマークが裏のタブで表示されるのを防ぐため、
/// MainScreenのタブ切り替え時に更新される。
///
/// 各画面はこのProviderを監視して、自分が表示されているタブかを判定できる。
final currentTabIndexProvider = NotifierProvider<CurrentTabIndexNotifier, int>(
CurrentTabIndexNotifier.new,
);
class CurrentTabIndexNotifier extends Notifier<int> {
@override
int build() {
return 0; // 初期値: ホーム画面
}
void setIndex(int index) {
state = index;
}
}