gpt4 book ai didi

android - Textview 未按需要从 strings.xml 中显示

转载 作者:行者123 更新时间:2023-11-29 15:07:41 25 4
gpt4 key购买 nike

我必须在我的 TextView 中显示一些带有语法高亮的代码。所以我正在测试语法 hhighligting 是否有效

我在我的 strings.xml 中添加了一些测试代码并尝试在 textview 中显示它

一切正常,但当应用程序运行时,代码显示在 1 行中像下面一样 enter image description here

我的代码

strings.xml

<?xml version="1.0" encoding="utf-8"?>

<string name="app_name">syntaxtest</string>
<string name="javacode">
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);


TextView tv = (TextView) findViewById(R.id.mainTextView);

}
}</string>

ma​​inactivity.java

public class MainActivity extends Activity 
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String code = getResources().getString(R.string.javacode);

TextView tv = (TextView) findViewById(R.id.mainTextView);

// code is a String with source code to highlight
// myTextView is a TextView component
PrettifyHighlighter highlighter = new PrettifyHighlighter();
String highlighted = highlighter.highlight("java", code);
tv.setText(Html.fromHtml(highlighted));

}
}

最佳答案

尝试转义序列 '\t' 用于制表符和 '\n' 用于换行。

<string name="javacode">
public class MainActivity extends Activity \n
{\n
@Override\n
protected void onCreate(Bundle savedInstanceState)
{\n
super.onCreate(savedInstanceState);\n
setContentView(R.layout.main);\n
TextView tv = (TextView) findViewById(R.id.mainTextView);\n
}\n
}</string>

还有许多其他序列可能对您有用,请参阅 here

关于android - Textview 未按需要从 strings.xml 中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35430119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com