当您想在某些情况下访问自定义视图时layout.xml
文件,您有两个选择:
- 该视图属于它自己的类。然后你就做
<package.name.MyView android:layout_width= ... />
- 该视图是一个内部类:
<view class="package.name.OuterClass$MyView" android:layout_width= ... />
现在我想在 a 中做同样的事情<PreferenceScreen>
.第一种方法效果很好,但我想把所有的自定义Preference
在我的 PreferenceActivity 中一起上课。我试过<Preference class="package.name.OuterClass$MyPreference" ... />
(也用“.”代替“$”)以及<package.name.OuterClass.MyPreference ... />
,但都失败了。
有人有想法吗?
当处理Views
充气,LayoutInflater
寻找“视图”->“类”案例:
View createViewFromTag(View parent, String name, AttributeSet attrs) {
if (name.equals("view")) {
name = attrs.getAttributeValue(null, "class");
} ...
优先PreferenceInflater
没有,所以这是“类”的情况。
它在其中使用反射createItem()
方法,这可能就是第一个案例适合您的原因。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)