Calling TextView.setTextSize() is working abnormally. Right after the call to setTextSize if we get a getTextSize its returning a much higher value that what we set it to earlier.
Here’s what we’re doing:
zoomControl.setOnZoomInClickListener(new OnClickListener() {
public void onClick(View view) {
float size = mViewShabad.getTextSize() + 1;
textView.setTextSize(size);
}
});
Has anyone seen this before?
The difference here is that in the
setTextSize(int size)method, the unit type by default is “sp” or “scaled pixels”. This value will be a different pixel dimension for each screen density (ldpi, mdpi, hdpi).getTextSize(), on the other hand, returns the actual pixel dimensions of the text.You can use
setTextSize(int unit, float size)to specify a unit type. The constant values for this can be found in the TypedValue class, but some of them are: