问题
How to get PreferenceScreen line height depend from xml in Preference subclass?
public class MyPref extends Preference{
@Override
protected void onBindView(View view) {
super.onBindView(view);
// Here getTop() & getBottom() is 0:0
}
}
EDIT & ANSWER
from: Android: how to get value of "listPreferredItemHeight" attribute in code?
value is in float listPreferredItemHeight
public class MyPref extends Preference
{
private float listPreferredItemHeight;
@Override protected View onCreateView(ViewGroup parent)
{
Context context = getContext();
android.util.TypedValue value = new android.util.TypedValue();
context.getTheme().resolveAttribute(android.R.attr.listPreferredItemHeight, value, true);
android.util.DisplayMetrics metrics = new android.util.DisplayMetrics();
((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(metrics);
listPreferredItemHeight = value.getDimension(metrics);
}
}
来源:https://stackoverflow.com/questions/35404956/how-to-get-preferencescreen-line-height