gsettings vala文档不是很详细,我找不到一种方法来读取存储在gsettings中的一系列字典中。现在,我在我的架构中有这个:
<key type="aa{ss}" name="services">
<default>[{"id": "postgresql", "name": "PostgreSQL"}]</default>
<summary></summary>
<description></description>
</key>
如何读取services
数组第一个值的键id
和name
的值?我尝试了很多可能性(例如,使用get_value("services")
然后使用get_child(0)
)读取字典,但它只是断开了,我不知道如何调试。
您的格式字符串 aa{ss}
用于"字符串键和字符串值的尺寸数组" ----请注意双阵列。您可能只需要a{ss}
,然后可以通过get_child(0)
访问DICS,然后使用lookup_value(...)
我发现问题是,在static construct
块中创建时,我的设置实例在某种程度上无法正确初始化。将其创建到回忆的方法解决了问题。