以下代码导致 Resources$NotFoundException
异常。
TypedValue value = new TypedValue();
((Activity)context).getResources().getValue(android.R.attr.listPreferredItemHeight, value, true);
编辑:回答中添加了更多代码。
当我运行以下代码时,displayMetrics
的所有成员都是 0。同样地,ret
也是。
TypedValue value = new TypedValue();
DisplayMetrics displayMetrics = new DisplayMetrics();
((Activity)context).getTheme().resolveAttribute(android.R.attr.listPreferredItemHeight, value, true);
float ret = value.getDimension(displayMetrics);
LinearLayout
的类中解析属性?似乎我无法访问getTheme()
,并尝试使用context.getResources().getValue(R.styleable.my_attr, value, true);
会抛出ResourcesNotFound
异常。 - Snailerpublic Foo(Context context, AttributeSet attr)
中调用的。 - SnailergetResources().getDisplayMetrics()
或者Context.getResources().getDisplayMetrics()
。 - idunnololz