Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
Android studio 将所有硬编码字符串提取到字符串资源_Android Studio_Intellij Idea_Keyboard Shortcuts - Fatal编程技术网

Android studio 将所有硬编码字符串提取到字符串资源

Android studio 将所有硬编码字符串提取到字符串资源,android-studio,intellij-idea,keyboard-shortcuts,Android Studio,Intellij Idea,Keyboard Shortcuts,我知道有Alt+Enter组合可以将单个字符串提取到字符串资源。但我想知道是否有什么东西可以将项目的所有字符串提取到字符串资源中 另外,如果我制作了其中一个,Android studio也不会制作相同的字符串到字符串资源 String s = "Hello World"; String s2 = "Hello World"; 比如说。我将“Hello World”作为字符串资源,但在项目中,在同一个文件中仍然保留另一个硬编码 String s = getString(R.string.hell

我知道有Alt+Enter组合可以将单个字符串提取到字符串资源。但我想知道是否有什么东西可以将项目的所有字符串提取到字符串资源中

另外,如果我制作了其中一个,Android studio也不会制作相同的字符串到字符串资源

String s = "Hello World";
String s2 = "Hello World";
比如说。我将“Hello World”作为字符串资源,但在项目中,在同一个文件中仍然保留另一个硬编码

String s = getString(R.string.helloworld);
String s2 = "Hello World";

如果有人知道类似的东西。

根据您的要求,我知道您真正搜索的android studio中没有此类功能,但这里有一些替代方法可以帮助您

  • 转到“
    分析
    运行检查..
    ”,然后键入
    “硬编码字符串”
    。在你的整个项目中运行它,你将得到一个检查结果面板,它将显示项目的所有硬编码文本。然后按Alt+Enter,您将获得一个自动提取该字符串的选项

  • 另一种方法是查找并替换,但由于时间消耗,效果并不好。为了简化方法,您可以查看灵活性


我相信你正在寻找的快捷方式是(在Mac电脑上)Alt+Command+C

在Android 3.2.1中,你可以进入
编辑->查找->在路径中查找…
,然后搜索
Android:text=“
”。这将为你提供
xml文件中所有硬编码字符串的列表

搜索
Toast.makeText
,从
java文件中查找所有Toast项

搜索
setText(“
以搜索
java文件中的文本集”
等等


您可以像这样搜索希望在整个项目中查找并替换的项目。

对于XML布局文件中的硬编码字符串:

单击分析->按名称运行检验->输入硬编码字符串->选择整个项目->确定。 在这里,您将从xml布局文件中获取所有硬编码字符串,您只能通过以下方式提取到strings.xml:

单击硬编码文本->Alt+Enter->从资源中提取->为该字符串输入相应的资源名称->确定

对于Java类代码中的硬编码字符串:

单击分析->按名称运行检验->输入硬编码文本->选择整个项目->确定。 在这里,您将从Java类文件中获取所有硬编码字符串,您只能通过以下方式提取到strings.xml:

单击硬编码文本->Alt+Enter->从资源中提取->为该字符串输入相应的资源名称->确定->为java代码中创建的每个字符串资源添加getString

因此,硬编码字符串->Java类代码
Android Studio中的硬编码文本->Xml布局文件。

只需使用“查找和替换”即可。它将更加高效!无需关闭此文件,因为它也不属于这些文件中的任何一个,
重复项,因为不清楚您在问什么,内容过于广泛,主要基于意见。
。这只是一个问题,需要知道是否有选项/工具/功能是否可用。你必须为此花费一点时间。据我所知,除了打开每个文件并替换相同的字符串外,没有其他选项。@ShreeKrishna尝试找到更好的选项。这种类型的选项在xcode中可用,所以我认为在android studio中也有类似的选项。好的,我会,但可能会对你有所帮助第二个选项是查找和替换。是的,这对我有更好的帮助。但它在xml中找不到。@CreativeAndroid Analysis-按名称运行检查-“硬编码文本Android Lint”然后选择文件掩码*。xml@CreativeAndroid没错。
硬编码文本
将显示xml的所有硬编码字符串,国际化问题的
硬编码字符串
将显示java文件字符串。它只在布局文件中对我有效,在java类中不起作用这不适用于最新版本(2.3.3)。该选项已被删除。太糟糕了!有人有任何线索吗?此选项用于创建常量,而不是strings.xml extraction它的选项+在Mac上输入