Android:多行文本视图

时间:2013-01-31 14:04:23

标签: android textview

我正在构建一个包含c ++程序的应用程序。我只需要在我的xml布局中将代码显示为文本。我不希望它编译它或用它做任何其他事情。但每次我写文本时都显示错误,你不能使用像'<','>'这样的字符串或双引号。你能帮我解释一下如何在文本视图中使用这些字符串。 这是我的xm布局。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
    android:id="@+id/program_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:inputType="textMultiLine"
    android:text="
       #include<iostream.h>
       #include<conio.h>
       void main()
       {
         int arr[n], i,j,n,temp;
         cout<<"How any elements you want to enter";
         cin>>n;
         cout<<"Enter array elements"
         for(i=0;i<n;i++)  
         cin>>a[i]
       }     " >

    <requestFocus />
</EditText>

3 个答案:

答案 0 :(得分:3)

尝试使用xml特殊字符。

 < replace into &lt; 
 >  replace into &gt;
 " replace into &quot;

你需要xml的任何其他特殊字符代码才能看到这一点 链接:http://www.quackit.com/html/html_special_characters.cfm

答案 1 :(得分:0)

你可以按照Tamilarasi的建议去做,或者有一个技巧可以自动完成。 只需用''替换你的“”并点击CTRL + SHIFT + F. Eclipse将自动为您进行更改。

android:text='
       #include<iostream.h>
       #include<conio.h>
       void main()
       {
         int arr[n], i,j,n,temp;
         cout<<"How any elements you want to enter";
         cin>>n;
         cout<<"Enter array elements"
         for(i=0;i<n;i++)  
         cin>>a[i]
       }     '>

答案 2 :(得分:0)

this question查看我的回复。您不应在XML布局中包含文字字符串。更推荐将C代码存储在assets文件夹中的文件中,因此您根本不需要修改它们(这是浪费时间和错误的来源)。只需使用<pre>[text read from file]</pre>标记中包含的所有C代码来扩展WebView小部件,您就可以完全正确地显示它并免费使用滚动和缩放。