Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用我自己的字符串覆盖string.xml_Java_Android_Xml_String - Fatal编程技术网

Java 用我自己的字符串覆盖string.xml

Java 用我自己的字符串覆盖string.xml,java,android,xml,string,Java,Android,Xml,String,我试图覆盖strings.xml中所有自动解析的字符串,这样android就可以使用我的字符串而不是strings.xml中的字符串,而无需更改xml文件中的语法 我想使用运行时下载的字符串,并在原生文本视图、按钮、工具栏等中显示它们。我的第一个想法是定义一个自定义LayoutFlater.Factory,并在视图膨胀后以编程方式设置文本、提示等。问题是,LayoutFlater代码期望我自己膨胀视图,而复制和粘贴膨胀逻辑似乎是个坏主意 我的第二个想法是包装AttributeSet并注入我自己的

我试图覆盖strings.xml中所有自动解析的字符串,这样android就可以使用我的字符串而不是strings.xml中的字符串,而无需更改xml文件中的语法

我想使用运行时下载的字符串,并在原生文本视图、按钮、工具栏等中显示它们。我的第一个想法是定义一个自定义LayoutFlater.Factory,并在视图膨胀后以编程方式设置文本、提示等。问题是,LayoutFlater代码期望我自己膨胀视图,而复制和粘贴膨胀逻辑似乎是个坏主意

我的第二个想法是包装AttributeSet并注入我自己的字符串,但我找不到一种方法来做到这一点


是否有人有一种可行的、健壮的方法来完成我正在尝试的任务?

当您将数据作为资源提供时,它不能在运行时修改。确切地说,“res”文件夹不能用java代码修改

这也适用于Strings.xml,即“Values”文件夹

您可以做的最好的事情是创建一个字符串类,并将这些字符串提供给textviewss等。您可以访问该类并更改代码中的值,刷新布局(重新调整)以更改外观。

您所说的“拉齐该类”到底是什么意思?我知道我不能修改res文件夹本身。我只是想改变字符串获取的行为。在xmls中对每个视图进行子类化似乎很烦人。