Skip to content

Instantly share code, notes, and snippets.

View EfeBudak's full-sized avatar
learn->work->learn->work

Efe Budak EfeBudak

learn->work->learn->work
View GitHub Profile
@EfeBudak
EfeBudak / fragment_with_return_to_top_button.xml
Created June 28, 2018 13:22
Return to Top button layout
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true">
<Button
android:id="@+id/button_return_to_top"
android:layout_width="wrap_content"
@EfeBudak
EfeBudak / BitmapUtils.java
Last active August 10, 2018 04:46
Vector drawable to bitmap
public static BitmapDescriptor generateBitmapDescriptorFromRes(
Context context, int resId) {
Drawable drawable = ContextCompat.getDrawable(context, resId);
drawable.setBounds(
0,
0,
drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight());
Bitmap bitmap = Bitmap.createBitmap(
drawable.getIntrinsicWidth(),
@EfeBudak
EfeBudak / AppModule.java
Created July 11, 2017 06:08
Application context on Toast message sample
@Module
public class AppModule {
@Singleton
@Provides
Context provideContext(Application application) {
return application;
}
}
@EfeBudak
EfeBudak / LoginFragment.java
Created July 11, 2017 06:07
Application context on Toast message sample
public class LoginFragment extends Fragment{
@Inject
Context mContext;
@Override
public void onAttach(Context context) {
AndroidSupportInjection.inject(this);
super.onAttach(context);
}
@EfeBudak
EfeBudak / secret.properties
Created July 8, 2017 12:09
Sample secret.properties file for popular-movies-with-dagger
BASE_URL="https://api.themoviedb.org/"
BASE_IMAGE_URL="https://image.tmdb.org/t/p/"
API_VERSION="3/"
API_KEY="TODO_GO_GET_YOUR_API_KEY_FROM_https://www.themoviedb.org/settings/api"
@EfeBudak
EfeBudak / FragmentModule.java
Last active July 4, 2017 11:20
Dagger 2.11 FragmentModule
@Module
public abstract class FragmentModule {
@FragmentScope
@ContributesAndroidInjector(modules = MovieListFragmentModule.class)
abstract MovieListFragment contributesMovieListFragment();
@FragmentScope
@ContributesAndroidInjector(modules = MovieDetailFragmentModule.class)
abstract MovieDetailFragment contributesMovieDetailFragment();
@EfeBudak
EfeBudak / MovieDetailFragmentModule.java
Created July 3, 2017 14:10
Dagger 2.11 MovieDetailFragmentModule
@FragmentScope
@Module
public class MovieDetailFragmentModule {
@FragmentScope
@Provides
MovieDetailContract.View provideDetailView(MovieDetailFragment movieDetailFragment) {
return movieDetailFragment;
}
@EfeBudak
EfeBudak / MovieDetailFragmentProvider.java
Created July 3, 2017 14:09
Dagger 2.11 MovieDetailFragmentProvider
@FragmentScope
@Module
public abstract class MovieDetailFragmentProvider {
@FragmentScope
@ContributesAndroidInjector(modules = MovieDetailFragmentModule.class)
abstract MovieDetailFragment contributesMovieDetailFragment();
}
@EfeBudak
EfeBudak / AppComponent.java
Created July 3, 2017 13:59
Dagger 2.11 AppComponent
@Singleton
@Component(modules = {
AndroidInjectionModule.class,
AppModule.class,
ApiModule.class,
ActivityModule.class})
public interface AppComponent {
@Component.Builder
interface Builder {
@BindsInstance
@EfeBudak
EfeBudak / ActivityModule.java
Created July 3, 2017 13:57
Dagger 2.11 ActivityModule
@ActivityScope
@Module
public abstract class ActivityModule {
@ActivityScope
@ContributesAndroidInjector(modules = MovieListFragmentProvider.class)
abstract MovieListActivity contributesMovieListActivity();
@ActivityScope
@ContributesAndroidInjector(modules = MovieDetailFragmentProvider.class)