Android的:如何获得的&QUOT值列表preferredItemHeight"属性中的code? [英] Android: how to get value of "listPreferredItemHeight" attribute in code?
本文介绍了Android的:如何获得的&QUOT值列表preferredItemHeight"属性中的code?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面code给出资源$ NotFoundException
的TypedValue值=新的TypedValue();
((活动)范围内).getResources()的getValue(android.R.attr.list preferredItemHeight,值,真)。
编辑:更多code加入反应来回答。
当我运行低于code, displayMetrics
中的所有成员都为0正如 RET
。
的TypedValue值=新的TypedValue();
DisplayMetrics displayMetrics =新DisplayMetrics();
((活动)范围内).getTheme()resolveAttribute(android.R.attr.list preferredItemHeight,价值,真正的);
浮RET = value.getDimension(displayMetrics);
解决方案
本作品:
的TypedValue值=新的TypedValue();
((活动)范围内).getTheme()resolveAttribute(android.R.attr.list preferredItemHeight,价值,真正的);
编辑:你得到零,因为没有初始化 DisplayMetrics
实例正常。它需要的参考(显示器)的框架做任何有意义的转换。
android.util.TypedValue值=新android.util.TypedValue();
布尔B = getTheme()resolveAttribute(android.R.attr.list preferredItemHeight,值,真)。
字符串s = TypedValue.coerceToString(value.type,value.data);
android.util.DisplayMetrics指标=新android.util.DisplayMetrics();
。getWindowManager()getDefaultDisplay()getMetrics(度量)。
浮RET = value.getDimension(指标);
在我的Nexus 1 取值
是 64.0dip 和 RET
是 96 的。
The below code gives Resources$NotFoundException
TypedValue value = new TypedValue();
((Activity)context).getResources().getValue(android.R.attr.listPreferredItemHeight, value, true);
EDIT: More code added in response to answer.
When I run the below code, all members of displayMetrics
are 0. As is ret
.
TypedValue value = new TypedValue();
DisplayMetrics displayMetrics = new DisplayMetrics();
((Activity)context).getTheme().resolveAttribute(android.R.attr.listPreferredItemHeight, value, true);
float ret = value.getDimension(displayMetrics);
解决方案
This works:
TypedValue value = new TypedValue();
((Activity)context).getTheme().resolveAttribute(android.R.attr.listPreferredItemHeight, value, true);
EDIT: You get zero because haven't initialized the DisplayMetrics
instance properly. It needs a frame of reference (a display) to do any meaningful conversion.
android.util.TypedValue value = new android.util.TypedValue();
boolean b = getTheme().resolveAttribute(android.R.attr.listPreferredItemHeight, value, true);
String s = TypedValue.coerceToString(value.type, value.data);
android.util.DisplayMetrics metrics = new android.util.DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
float ret = value.getDimension(metrics);
On my Nexus 1 s
is 64.0dip and ret
is 96.
这篇关于Android的:如何获得的&QUOT值列表preferredItemHeight"属性中的code?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文