Android: strings.xml의 html
예를 들어 다음 html 코드를 표시하고 싶습니다.
<body>
<p><b>Hello World</b></p>
<p>This is a test of the URL <a href="http://www.example.com"> Example</a></p>
<p><b>This text is bold</b></p>
<p><em>This text is emphasized</em></p>
<p><code>This is computer output</code></p>
<p>This is<sub> subscript</sub> and <sup>superscript</sup></p>
</body>
html in resources를 선언하여 대화상자에 표시하고자 합니다.strings.xml
. 어떻게 하면 되죠?
strings.xml에서 html 소스 코드를 추가하는 가장 좋은 방법은 다음을 사용하는 것입니다.<![CDATA[html source code]]>
. 다음은 예입니다.
<string name="html"><![CDATA[<p>Text</p>]]></string>
그런 다음 다음을 사용하여 이 html을 TextView에 표시할 수 있습니다.
myTextView.setText(Html.fromHtml(getString(R.string.html)));
html에 링크가 있고 링크를 클릭할 수 있도록 하려면 다음 방법을 사용합니다.
myTextView.setMovementMethod(LinkMovementMethod.getInstance());
대부분의 예를 들어보겠습니다.제 생각에는.pre
태그가 지원됩니다.
여기가.strings.xml
파일:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Formatting</string>
<string name="link"><b>Hello World</b> This is a test of the URL <a href="http://www.example.com/">Example</a></string>
<string name="bold"><b>This text is bold</b></string>
<string name="emphasis"><em>This text is emphasized</em></string>
<string name="sup">This is <sub>subscript</sub> and <sup>superscript</sup></string>
</resources>
배치도는 여기 있습니다.링크를 실제로 클릭할 수 있으려면 약간의 추가 작업이 필요합니다.
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/test1"
android:linksClickable="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="12dp"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"/>
<TextView
android:id="@+id/test2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="12dp"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"/>
<TextView
android:id="@+id/test3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="12dp"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"/>
<TextView
android:id="@+id/test4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="12dp"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"/>
</LinearLayout>
</ScrollView>
마지막으로 코드:
TextView test1 = (TextView)findViewById(R.id.test1);
Spanned spanned = Html.fromHtml(getString(R.string.link));
test1.setMovementMethod(LinkMovementMethod.getInstance());
test1.setText(spanned);
TextView test2 = (TextView)findViewById(R.id.test2);
test2.setText(Html.fromHtml(getString(R.string.bold)));
TextView test3 = (TextView)findViewById(R.id.test3);
test3.setText(Html.fromHtml(getString(R.string.emphasis)));
TextView test4 = (TextView)findViewById(R.id.test4);
test4.setText(Html.fromHtml(getString(R.string.sup)));
String.xml은 다음과 같이 HTML 엔티티를 포함할 수 있습니다.
<resources>
<string name="hello_world"><span></string>
</resources>
코드:getResources().getString(R.string.hello_world);
에 평가할 것입니다."<span>"
. 다음과 같이 HTML 형식의 텍스트를 사용할 수 있습니다.
TextView helloWorld = (TextView)findViewById(R.id.hello_world);
helloWorld.setText(Html.fromHtml(getString(R.string.hello_world)));
XML 리소스 시스템에서 지원하는 모든 스타일은 Android 설명서에서 설명합니다.
거기에 포함된 모든 것을 사용할 수 있고 직접 설정할 수 있습니다.TextView
. 추가 HTML 마크업을 사용해야 한다면 원시 HTML을 배치해야 할 것입니다.<
,>
등) 리소스에 전체를 로드합니다.WebView
.
효과가 있었습니다.
<?xml version="1.0" encoding="utf-8"?>
<string name="app_name">Sangamner College</string>
<string name="about_desc"><![CDATA[In order to make higher education available in the rural environment such as of Sangamner, Shikshan Prasarak Sanstha was established in 1960. Sangamner College was established by Shikshan Prasarak Sanstha, Sangamner on 23rd January 1961 on the auspicious occasion of Birth Anniversary of Netaji Subhashchandra Bose.The Arts and Commerce courses were commenced in June 1961 and in June 1965 Science courses were introduced. When Sangamner College was founded forty years ago, in 1961, there was no college available to the rural youth of this region. <br><br></>The college was founded with the aim of upliftment of the disadvantageous rural youth in all respects. On one hand, we are aware of the social circumstances prevailing in the rural area where we are working. So, we offer the elective option to students, which are favourable to the local atmosphere. On the other hand, we want to academically empower the aspiring youth by offering vocational course in Computer Applications to students of Arts & Commerce. B.B.A., B.C.A. and M.C.A. courses were started with the same purpose. “Think globally, act locally” is our guiding Principle.]]></string>
언급URL : https://stackoverflow.com/questions/13425002/android-html-in-strings-xml
'programing' 카테고리의 다른 글
strcpy()/strncpy()는 유닉스에서 최적화를 설정할 때 여분의 공간이 있는 구조 부재에서 충돌합니까? (0) | 2023.10.11 |
---|---|
Excel V lookup 함수 제한 256자 극복 방법 (0) | 2023.10.11 |
클릭한 요소의 클래스를 가져오는 방법은 무엇입니까? (0) | 2023.10.11 |
Apple M1에서 march= native가 작동하지 않는 이유는 무엇입니까? (0) | 2023.10.11 |
WP 테마를 사용자 지정할 때 navbar를 \"태그 앞에 배치해야 합니까? 뒤에 배치해야 합니까? (0) | 2023.10.11 |