Last active
May 29, 2016 13:38
-
-
Save BCsl/4103e5def3adc11d26ac23155cb8b0a0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public static int resolveSizeAndState(int desireSize, int measureSpec) { | |
int result = desireSize; | |
int specMode = MeasureSpec.getMode(measureSpec); | |
int specSize = MeasureSpec.getSize(measureSpec); | |
switch (specMode) { | |
case MeasureSpec.UNSPECIFIED: | |
result = desireSize; | |
break; | |
case MeasureSpec.AT_MOST: | |
if (specSize < desireSize) { | |
result = specSize; | |
} else { | |
result = desireSize; | |
} | |
break; | |
case MeasureSpec.EXACTLY: | |
result = specSize; | |
break; | |
} | |
return result; | |
} | |
private static float dipToPixels(float dipValue) { | |
final float scale = Resources.getSystem().getDisplayMetrics().density; | |
return dipValue * scale + 0.5f; | |
} | |
private static float spToPixels(float spValue) { | |
final float fontScale = Resources.getSystem().getDisplayMetrics().scaledDensity; | |
return spValue * fontScale + 0.5f; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment