有时候xml默认的值需要代码里动态修改,比如修改SOUI::SStatic的当前的颜色,xml里配置的属性:colorText 我以为就会有setColorText 这样的接口找了半天没找到,百度也没找到 只能看源码最后看了源码所有的属性修改都有一个统一的接口,函数原型如下:
HRESULT SetAttribute(const SStringW & strAttribName, const SStringW & strValue, BOOL bLoading)
设置的方法也很简单了
首先获取到控件的指针
SOUI::SStatic* pvalue = FindChildByName2<SOUI::SStatic>(L"value");
然后根据获取到的指针直接set就OK了,所有的属性都是根据这个接口去设置的
pvalue->SetAttribute(L"colorText", L"@color/red");
第一个参数:属性的名称
第二个参数:属性的值