From 99d82e3d8af72048323fbbd4e2e8c2c9adb1b278 Mon Sep 17 00:00:00 2001 From: Gabriel Rotaru Date: Mon, 22 Apr 2019 19:29:09 +0300 Subject: [PATCH] add onboarding screen with hardcoded text and images --- app/src/main/AndroidManifest.xml | 5 + .../monitorizarevot/OnboardingActivity.java | 135 ++++++++++++++++++ .../code4/monitorizarevot/StartActivity.java | 2 +- .../adapter/OnboardingAdapter.java | 62 ++++++++ .../dagger/ActivityBindingModule.java | 4 + .../dagger/ViewModelModule.java | 5 + .../code4/monitorizarevot/db/Preferences.java | 15 ++ .../net/model/OnboardingItem.java | 31 ++++ .../viewmodel/OnboardingViewModel.java | 16 +++ .../drawable-xhdpi/ic_onboarding_building.png | Bin 0 -> 15872 bytes .../res/drawable-xhdpi/ic_onboarding_form.png | Bin 0 -> 11974 bytes .../res/drawable-xhdpi/ic_onboarding_note.png | Bin 0 -> 16705 bytes .../main/res/layout/activity_onboarding.xml | 43 ++++++ .../main/res/layout/item_onboarding_page.xml | 48 +++++++ app/src/main/res/values-ro/strings.xml | 11 ++ app/src/main/res/values/dimens.xml | 5 + app/src/main/res/values/strings.xml | 11 ++ 17 files changed, 392 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/ro/code4/monitorizarevot/OnboardingActivity.java create mode 100644 app/src/main/java/ro/code4/monitorizarevot/adapter/OnboardingAdapter.java create mode 100644 app/src/main/java/ro/code4/monitorizarevot/net/model/OnboardingItem.java create mode 100644 app/src/main/java/ro/code4/monitorizarevot/viewmodel/OnboardingViewModel.java create mode 100755 app/src/main/res/drawable-xhdpi/ic_onboarding_building.png create mode 100755 app/src/main/res/drawable-xhdpi/ic_onboarding_form.png create mode 100755 app/src/main/res/drawable-xhdpi/ic_onboarding_note.png create mode 100644 app/src/main/res/layout/activity_onboarding.xml create mode 100644 app/src/main/res/layout/item_onboarding_page.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b81339e..5ef568b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -45,6 +45,11 @@ android:screenOrientation="portrait" android:theme="@style/AppTheme" android:windowSoftInputMode="stateAlwaysHidden|adjustResize" /> + diff --git a/app/src/main/java/ro/code4/monitorizarevot/OnboardingActivity.java b/app/src/main/java/ro/code4/monitorizarevot/OnboardingActivity.java new file mode 100644 index 0000000..94cc49c --- /dev/null +++ b/app/src/main/java/ro/code4/monitorizarevot/OnboardingActivity.java @@ -0,0 +1,135 @@ +package ro.code4.monitorizarevot; + +import android.arch.lifecycle.ViewModelProviders; +import android.content.Intent; +import android.os.Bundle; +import android.support.annotation.Nullable; +import android.support.v4.view.ViewPager; +import android.view.View; +import android.widget.Button; + +import java.util.ArrayList; +import java.util.List; + +import ro.code4.monitorizarevot.adapter.OnboardingAdapter; +import ro.code4.monitorizarevot.db.Preferences; +import ro.code4.monitorizarevot.net.model.OnboardingItem; +import ro.code4.monitorizarevot.observable.ObservableListener; +import ro.code4.monitorizarevot.viewmodel.OnboardingViewModel; + +import ro.code4.monitorizarevot.R; + +public class OnboardingActivity extends BaseActivity { + private Button buttonPrevious, buttonNext; + + private List items; + + private ViewPager onboardingViewPager; + private int currentPosition; + + // TODO get onboarding items dynamically + private List getOnboardingItems() { + List items = new ArrayList<>(); + + OnboardingItem item1 = new OnboardingItem(1, getString(R.string.onboarding_title_1), getString(R.string.onboarding_description_1), R.drawable.ic_onboarding_building); + items.add(item1); + + OnboardingItem item2 = new OnboardingItem(2, getString(R.string.onboarding_title_2), getString(R.string.onboarding_description_2), R.drawable.ic_onboarding_form); + items.add(item2); + + OnboardingItem item3 = new OnboardingItem(3, getString(R.string.onboarding_title_3), getString(R.string.onboarding_description_3), R.drawable.ic_onboarding_note); + items.add(item3); + + return items; + } + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_onboarding); + + items = getOnboardingItems(); + + onboardingViewPager = findViewById(R.id.onboarding_viewpager); + buttonNext = findViewById(R.id.btn_next); + buttonPrevious = findViewById(R.id.btn_previous); + + OnboardingAdapter onboardingAdapter = new OnboardingAdapter(this, items); + onboardingViewPager.setAdapter(onboardingAdapter); + onboardingViewPager.addOnPageChangeListener(onPageChangeListener); + + buttonPrevious.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + onboardingViewPager.setCurrentItem(currentPosition - 1); + } + }); + + buttonNext.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + if (currentPosition == items.size() - 1) { + goToLogin(); + } else { + onboardingViewPager.setCurrentItem(currentPosition + 1); + } + } + }); + + Preferences.hasSeenOnboarding().startRequest(new PreferencesSubscriber()); + } + + @Override + protected void setupViewModel() { + viewModel = ViewModelProviders.of(this, factory).get(OnboardingViewModel.class); + } + + private class PreferencesSubscriber extends ObservableListener { + + @Override + public void onNext(Boolean hasSeenOnboarding) { + super.onNext(hasSeenOnboarding); + if (hasSeenOnboarding) { + goToLogin(); + } + } + + @Override + public void onSuccess() { + + } + } + + ViewPager.OnPageChangeListener onPageChangeListener = new ViewPager.OnPageChangeListener() { + @Override + public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { + + } + + @Override + public void onPageSelected(int position) { + currentPosition = position; + + if (position == 0) { + buttonPrevious.setVisibility(View.INVISIBLE); + } else if (position == items.size() - 1) { + buttonNext.setText(getString(R.string.onboarding_continue)); + } else { + buttonPrevious.setVisibility(View.VISIBLE); + + buttonNext.setText(getString(R.string.onboarding_next)); + } + } + + @Override + public void onPageScrollStateChanged(int state) { + + } + }; + + private void goToLogin() { + Preferences.saveSeenOnboarding(true); + startActivity(new Intent(OnboardingActivity.this, LoginActivity.class)); + finish(); + } +} diff --git a/app/src/main/java/ro/code4/monitorizarevot/StartActivity.java b/app/src/main/java/ro/code4/monitorizarevot/StartActivity.java index a58068f..22a016c 100644 --- a/app/src/main/java/ro/code4/monitorizarevot/StartActivity.java +++ b/app/src/main/java/ro/code4/monitorizarevot/StartActivity.java @@ -29,7 +29,7 @@ private class PreferencesSubscriber extends ObservableListener { public void onNext(Boolean hasCredentials) { super.onNext(hasCredentials); startActivity(new Intent(StartActivity.this, - hasCredentials ? ToolbarActivity.class : LoginActivity.class)); + hasCredentials ? ToolbarActivity.class : OnboardingActivity.class)); } @Override diff --git a/app/src/main/java/ro/code4/monitorizarevot/adapter/OnboardingAdapter.java b/app/src/main/java/ro/code4/monitorizarevot/adapter/OnboardingAdapter.java new file mode 100644 index 0000000..24f6aa9 --- /dev/null +++ b/app/src/main/java/ro/code4/monitorizarevot/adapter/OnboardingAdapter.java @@ -0,0 +1,62 @@ +package ro.code4.monitorizarevot.adapter; + +import android.content.Context; +import android.support.annotation.NonNull; +import android.support.constraint.ConstraintLayout; +import android.support.v4.view.PagerAdapter; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import java.util.List; +import ro.code4.monitorizarevot.net.model.OnboardingItem; + +import ro.code4.monitorizarevot.R; + +public class OnboardingAdapter extends PagerAdapter { + private Context context; + private List items; + + public OnboardingAdapter(Context context, List items) { + this.context = context; + this.items = items; + } + + @Override + public int getCount() { + return items.size(); + } + + @Override + public boolean isViewFromObject(@NonNull View view, @NonNull Object object) { + return view == object; + } + + @NonNull + @Override + public Object instantiateItem(@NonNull ViewGroup container, int position) { + View view = ((LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)) + .inflate(R.layout.item_onboarding_page, container, false); + + OnboardingItem item = items.get(position); + + TextView onboardingTitle = view.findViewById(R.id.onboarding_title); + ImageView onboardingIcon = view.findViewById(R.id.onboarding_icon); + TextView onboardingDescription = view.findViewById(R.id.onboarding_description); + + onboardingTitle.setText(item.getTitle()); + onboardingIcon.setImageResource(item.getImageResource()); + onboardingDescription.setText(item.getDescription()); + + container.addView(view); + + return view; + } + + @Override + public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) { + container.removeView((ConstraintLayout) object); + } +} diff --git a/app/src/main/java/ro/code4/monitorizarevot/dagger/ActivityBindingModule.java b/app/src/main/java/ro/code4/monitorizarevot/dagger/ActivityBindingModule.java index 84c915d..649c35e 100644 --- a/app/src/main/java/ro/code4/monitorizarevot/dagger/ActivityBindingModule.java +++ b/app/src/main/java/ro/code4/monitorizarevot/dagger/ActivityBindingModule.java @@ -3,12 +3,16 @@ import dagger.Module; import dagger.android.ContributesAndroidInjector; import ro.code4.monitorizarevot.LoginActivity; +import ro.code4.monitorizarevot.OnboardingActivity; import ro.code4.monitorizarevot.StartActivity; import ro.code4.monitorizarevot.ToolbarActivity; @Module(includes = {ViewModelModule.class}) public abstract class ActivityBindingModule { + @ContributesAndroidInjector + abstract OnboardingActivity activityOnboarding(); + @ContributesAndroidInjector abstract StartActivity activityStart(); diff --git a/app/src/main/java/ro/code4/monitorizarevot/dagger/ViewModelModule.java b/app/src/main/java/ro/code4/monitorizarevot/dagger/ViewModelModule.java index 5b29450..912663d 100644 --- a/app/src/main/java/ro/code4/monitorizarevot/dagger/ViewModelModule.java +++ b/app/src/main/java/ro/code4/monitorizarevot/dagger/ViewModelModule.java @@ -14,6 +14,11 @@ public abstract class ViewModelModule { @Binds abstract ViewModelProvider.Factory bindViewModelFactory(ViewModelFactory factory); + @Binds + @IntoMap + @ViewModelKey(OnboardingViewModel.class) + abstract ViewModel bindOnboardingViewModel(OnboardingViewModel viewModel); + @Binds @IntoMap @ViewModelKey(StartViewModel.class) diff --git a/app/src/main/java/ro/code4/monitorizarevot/db/Preferences.java b/app/src/main/java/ro/code4/monitorizarevot/db/Preferences.java index ec876a7..8c5752b 100644 --- a/app/src/main/java/ro/code4/monitorizarevot/db/Preferences.java +++ b/app/src/main/java/ro/code4/monitorizarevot/db/Preferences.java @@ -10,6 +10,7 @@ public class Preferences { private static final String PREFS_BRANCH_NUMBER = "PREFS_BRANCH_NUMBER"; private static final String PREFS_USERNAME = "PREFS_USERNAME"; private static final String PREFS_TOKEN = "PREFS_TOKEN"; + private static final String PREFS_ONBOARDING = "PREFS_ONBOARDING"; public static void clear() { Prefs.clear(); @@ -55,6 +56,10 @@ public static boolean hasBranch() { return getCountyCode() != null && getBranchNumber() != -1; } + public static void saveSeenOnboarding(boolean hasSeenOnboarding) { + Prefs.putBoolean(PREFS_ONBOARDING, hasSeenOnboarding); + } + public static ObservableRequest isAlreadyLoggedIn() { return new ObservableRequest<>(new ObservableRequest.OnRequested() { @Override @@ -64,4 +69,14 @@ public void onRequest(Subscriber subscriber) { } }); } + + public static ObservableRequest hasSeenOnboarding() { + return new ObservableRequest<>(new ObservableRequest.OnRequested() { + @Override + public void onRequest(Subscriber subscriber) { + subscriber.onNext(Prefs.getBoolean(PREFS_ONBOARDING, false)); + subscriber.onCompleted(); + } + }); + } } diff --git a/app/src/main/java/ro/code4/monitorizarevot/net/model/OnboardingItem.java b/app/src/main/java/ro/code4/monitorizarevot/net/model/OnboardingItem.java new file mode 100644 index 0000000..4fa69b1 --- /dev/null +++ b/app/src/main/java/ro/code4/monitorizarevot/net/model/OnboardingItem.java @@ -0,0 +1,31 @@ +package ro.code4.monitorizarevot.net.model; + +public class OnboardingItem { + private Integer id; + private String title; + private String description; + private int imageResource; + + public OnboardingItem(Integer id, String title, String description, int imageResource) { + this.id = id; + this.title = title; + this.description = description; + this.imageResource = imageResource; + } + + public Integer getId() { + return id; + } + + public String getTitle() { + return title; + } + + public String getDescription() { + return description; + } + + public int getImageResource() { + return imageResource; + } +} diff --git a/app/src/main/java/ro/code4/monitorizarevot/viewmodel/OnboardingViewModel.java b/app/src/main/java/ro/code4/monitorizarevot/viewmodel/OnboardingViewModel.java new file mode 100644 index 0000000..45f03c2 --- /dev/null +++ b/app/src/main/java/ro/code4/monitorizarevot/viewmodel/OnboardingViewModel.java @@ -0,0 +1,16 @@ +package ro.code4.monitorizarevot.viewmodel; + +import javax.inject.Inject; + +import ro.code4.monitorizarevot.domain.usecase.UseCaseFactory; +import ro.code4.monitorizarevot.presentation.LoadingMessageFactory; +import ro.code4.monitorizarevot.presentation.MessageFactory; + +public class OnboardingViewModel extends BaseViewModel { + + @Inject + public OnboardingViewModel(UseCaseFactory useCaseFactory, LoadingMessageFactory loadingMessageFactory, + MessageFactory messageFactory) { + super(useCaseFactory, loadingMessageFactory, messageFactory); + } +} diff --git a/app/src/main/res/drawable-xhdpi/ic_onboarding_building.png b/app/src/main/res/drawable-xhdpi/ic_onboarding_building.png new file mode 100755 index 0000000000000000000000000000000000000000..6247f8facdcd5acaa09c159de5402e2e68ba4791 GIT binary patch literal 15872 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
    # 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 Y4{9T=WTdpussI2007*qoM6N<$f`+&5FaQ7m literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_onboarding_note.png b/app/src/main/res/drawable-xhdpi/ic_onboarding_note.png new file mode 100755 index 0000000000000000000000000000000000000000..d89548e08f50f55526cf31345acb26154c63b6cd GIT binary patch literal 16705 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_onboarding.xml b/app/src/main/res/layout/activity_onboarding.xml new file mode 100644 index 0000000..af75935 --- /dev/null +++ b/app/src/main/res/layout/activity_onboarding.xml @@ -0,0 +1,43 @@ + + + + + +