我想在我的应用程序中实现“设置”部分,我想要 当用户选择任何一个字符串时 string.xml将根据用户选择更改其值。 这有可能吗?关于如何实施它的任何想法?
答案 0 :(得分:1)
您无法动态创建strings.xml。
但您可以执行以下操作: 使用HashMap字符串创建StringManager.java。 将用户定义的值存储在此映射中作为键/值对。密钥可以是strings.xml中的原始字符串
public String getString(int key){ *检查字符串是否在地图中 *如果不在map中:返回键的值,(例如:getResources()。getString(resId)),用户很高兴 * if key存在时返回用户定义的值 }
//从“设置”部分调用此方法 setString(int key,String value){ // key是在strings.xml中定义的字符串,value是用户定义的值。 }
您还必须实施某种保存/加载方法才能永久更改。
每当有用户可以更改的文本字段时,您必须设置如下文本:
someTextField.setText(stringManagerObject.getString(渣油));
答案 1 :(得分:0)
strings.xml用于将字符串变量存储为硬编码。
它不能动态更改.string.xml的目的是变量的可重用性。所以,layout.xml中的直接硬编码并不好(即使它可能会提高应用程序的速度)
如果要在应用程序中实施设置,请转到Android共享首选项。 Here就是一个很好的例子。