1 Duilib中Edit编辑控件输入文字时编辑框背景颜色不是所设置的背景颜色的问题

Duilib中我们对一个Edit编辑框控件设置背景颜色,xml如下

<Edit name="Create_Recoder_Task_Dialog_Task_Name_Edit" bkcolor="#FF5B5D5F"  textcolor="#FFFFFFFF"/>

我们想得到以下的效果,不管是Edit是未获取焦点还是获取输入焦点都是我们所设置的背景颜色,比如下图

Duilib – Edit编辑控件输入文字时编辑框背景颜色不是所设置的背景颜色的问题-StubbornHuang Blog

但是实际上我们获得效果如下图所示,不管如何设置bkcolor,当我们在编辑框中输入时编辑框有一部分都是白色

Duilib – Edit编辑控件输入文字时编辑框背景颜色不是所设置的背景颜色的问题-StubbornHuang Blog

这是因为Duilib实际上还是对window控件的封装,所以实际上真实的输入区域还是window的edit控件,因此要想改变输入区域的颜色,还得设置nativebkcolor属性,如下

<Edit name="Create_Recoder_Task_Dialog_Task_Name_Edit" bkcolor="#FF5B5D5F" nativebkcolor="#FF5B5D5F" textcolor="#FFFFFFFF"/>

将Edit控件的bkcolornativebkcolor设置为想要的背景颜色即可,这样就可以解决输入信息时编辑框颜色出现白色的问题了。