Merge pull request #39 from TouchInstinct/getresources

changes:
This commit is contained in:
Gavriil 2016-12-28 16:23:02 +03:00 committed by GitHub
commit e6f84442b4
2 changed files with 61 additions and 0 deletions

View File

@ -19,8 +19,12 @@
package ru.touchin.roboswag.components.navigation;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.CallSuper;
import android.support.annotation.ColorInt;
import android.support.annotation.ColorRes;
import android.support.annotation.DrawableRes;
import android.support.annotation.IdRes;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
@ -189,6 +193,32 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
return viewById;
}
/**
* Return the color value associated with a particular resource ID.
* Starting in {@link android.os.Build.VERSION_CODES#M}, the returned
* color will be styled for the specified Context's theme.
*
* @param resId The resource id to search for data;
* @return int A single color value in the form 0xAARRGGBB.
*/
@ColorInt
public int getColor(@ColorRes final int resId) {
return getActivity().getColorCompat(resId);
}
/**
* Returns a drawable object associated with a particular resource ID.
* Starting in {@link android.os.Build.VERSION_CODES#LOLLIPOP}, the
* returned drawable will be styled for the specified Context's theme.
*
* @param resId The resource id to search for data;
* @return Drawable An object that can be used to draw this resource.
*/
@NonNull
public Drawable getDrawable(@DrawableRes final int resId) {
return getActivity().getDrawableCompat(resId);
}
/**
* Calls when activity configuring ActionBar, Toolbar, Sidebar etc.
* If it will be called or not depends on {@link Fragment#hasOptionsMenu()} and {@link Fragment#isMenuVisible()}.

View File

@ -20,9 +20,14 @@
package ru.touchin.roboswag.components.navigation.activities;
import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.ColorRes;
import android.support.annotation.DrawableRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
@ -122,6 +127,32 @@ public abstract class BaseActivity extends AppCompatActivity
inputManager.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT);
}
/**
* Return the color value associated with a particular resource ID.
* Starting in {@link android.os.Build.VERSION_CODES#M}, the returned
* color will be styled for the specified Context's theme.
*
* @param resId The resource id to search for data;
* @return int A single color value in the form 0xAARRGGBB.
*/
@ColorInt
public int getColorCompat(@ColorRes final int resId) {
return ContextCompat.getColor(this, resId);
}
/**
* Returns a drawable object associated with a particular resource ID.
* Starting in {@link android.os.Build.VERSION_CODES#LOLLIPOP}, the
* returned drawable will be styled for the specified Context's theme.
*
* @param resId The resource id to search for data;
* @return Drawable An object that can be used to draw this resource.
*/
@NonNull
public Drawable getDrawableCompat(@DrawableRes final int resId) {
return ContextCompat.getDrawable(this, resId);
}
public void addOnBackPressedListener(@NonNull final OnBackPressedListener onBackPressedListener) {
onBackPressedListeners.add(onBackPressedListener);
}