android新手,搞不清楚xml设置属性和代码设置属性的关系比如系统的Theme.Panel的设置:
<style name="Theme.Panel">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowFrame">@null</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
</style>WindowIsFloating 该属性在sdk目录的platforms\android-16\data\res\values\attrs.xml 中列出的,但在android窗口类代码中没有发现该属性。请问这种属性能否在代码中动态的进行设置?比如运行后设置WindowIsFloating = fasle;
如何得到android.R.attr 类中的各个在xml文件中可以配置的属性,对应的纯代码设置方法?这些xml文件中可以设置的属性,和通常代码定义的类的可以直接设置的属性,有啥关系?
<style name="Theme.Panel">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowFrame">@null</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
</style>WindowIsFloating 该属性在sdk目录的platforms\android-16\data\res\values\attrs.xml 中列出的,但在android窗口类代码中没有发现该属性。请问这种属性能否在代码中动态的进行设置?比如运行后设置WindowIsFloating = fasle;
如何得到android.R.attr 类中的各个在xml文件中可以配置的属性,对应的纯代码设置方法?这些xml文件中可以设置的属性,和通常代码定义的类的可以直接设置的属性,有啥关系?
随便看了几个,好像View基本能对的上,源码里也有相关函数对应xml属性的关系说明。
那窗口类直接可以设置的xml属性,要想达到同样的效果,代码如何动态设置?为什么不提供xml属性对应的代码属性呢?举个例子,随便看个xml的属性定义:
<declare-styleable name="AlertDialog">
<attr name="fullDark" format="reference|color" />
<attr name="topDark" format="reference|color" />
<attr name="centerDark" format="reference|color" />
<attr name="bottomDark" format="reference|color" />
<attr name="fullBright" format="reference|color" />
<attr name="topBright" format="reference|color" />
<attr name="centerBright" format="reference|color" />
<attr name="bottomBright" format="reference|color" />
<attr name="bottomMedium" format="reference|color" />
<attr name="centerMedium" format="reference|color" />
<attr name="layout" />
<attr name="listLayout" format="reference" />
<attr name="multiChoiceItemLayout" format="reference" />
<attr name="singleChoiceItemLayout" format="reference" />
<attr name="listItemLayout" format="reference" />
<attr name="progressLayout" format="reference" />
<attr name="horizontalProgressLayout" format="reference" />
</declare-styleable>类似topDark这样的xml属性,代码如何设置同样的效果?为什么不提供这种便利性?