プロバイダを使ってインジェクトするように

This commit is contained in:
ろむねこ 2024-07-05 10:59:27 +09:00
parent 0d1a9e2006
commit 61e571e70e
Signed by: Fujimatsu
GPG Key ID: FA1F39A1BA37D168
2 changed files with 23 additions and 10 deletions

View File

@ -1,24 +1,16 @@
package one.nem.kidshift.utils;
// HiltのSingletonインスタンス
// FloatingActionButtonを別モジュールから制御するためのクラス
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import javax.inject.Inject;
import javax.inject.Singleton;
import dagger.Module;
import dagger.hilt.InstallIn;
import dagger.hilt.components.SingletonComponent;
import one.nem.kidshift.utils.KSLogger;
import one.nem.kidshift.utils.factory.KSLoggerFactory;
import one.nem.kidshift.utils.models.FabEventCallback;
@Module
@InstallIn(SingletonComponent.class)
@Singleton
public class FabManager {
private FloatingActionButton fab;
private final KSLogger logger;
@Inject

View File

@ -0,0 +1,21 @@
package one.nem.kidshift.utils.modules;
import dagger.Module;
import dagger.Provides;
import dagger.hilt.InstallIn;
import dagger.hilt.components.SingletonComponent;
import one.nem.kidshift.utils.FabManager;
import one.nem.kidshift.utils.factory.KSLoggerFactory;
import javax.inject.Singleton;
@Module
@InstallIn(SingletonComponent.class)
public class FabManagerModule {
@Provides
@Singleton
public FabManager provideFabManager(KSLoggerFactory loggerFactory) {
return new FabManager(loggerFactory);
}
}