Major refactor about artist and album
This commit is contained in:
parent
b922549dee
commit
6b959ec24a
36 changed files with 326 additions and 337 deletions
|
@ -35,48 +35,6 @@ import java.lang.reflect.Field;
|
|||
*/
|
||||
public final class TintHelper {
|
||||
|
||||
@SuppressWarnings("JavaReflectionMemberAccess")
|
||||
public static void colorHandles(@NonNull TextView view, int color) {
|
||||
try {
|
||||
Field editorField = TextView.class.getDeclaredField("mEditor");
|
||||
if (!editorField.isAccessible()) {
|
||||
editorField.setAccessible(true);
|
||||
}
|
||||
|
||||
Object editor = editorField.get(view);
|
||||
Class<?> editorClass = editor.getClass();
|
||||
|
||||
String[] handleNames = {"mSelectHandleLeft", "mSelectHandleRight", "mSelectHandleCenter"};
|
||||
String[] resNames = {"mTextSelectHandleLeftRes", "mTextSelectHandleRightRes", "mTextSelectHandleRes"};
|
||||
|
||||
for (int i = 0; i < handleNames.length; i++) {
|
||||
Field handleField = editorClass.getDeclaredField(handleNames[i]);
|
||||
if (!handleField.isAccessible()) {
|
||||
handleField.setAccessible(true);
|
||||
}
|
||||
|
||||
Drawable handleDrawable = (Drawable) handleField.get(editor);
|
||||
|
||||
if (handleDrawable == null) {
|
||||
Field resField = TextView.class.getDeclaredField(resNames[i]);
|
||||
if (!resField.isAccessible()) {
|
||||
resField.setAccessible(true);
|
||||
}
|
||||
int resId = resField.getInt(view);
|
||||
handleDrawable = view.getResources().getDrawable(resId);
|
||||
}
|
||||
|
||||
if (handleDrawable != null) {
|
||||
Drawable drawable = handleDrawable.mutate();
|
||||
drawable.setColorFilter(color, PorterDuff.Mode.SRC_IN);
|
||||
handleField.set(editor, drawable);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@CheckResult
|
||||
@NonNull
|
||||
public static Drawable createTintedDrawable(Context context,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue