我正在使用Eclipse中的Java创建Android应用程序。我正在使用每个按钮,一些信息文本。除了文本,我还使用了指向网站的超链接。但是,当我尝试在第二个发送后放置我的超链接时,它会自动将它放在最后一个句子之后。在strings.xml
中,我可以将链接放在开头,中间或某些位置之间,但在实际出现时,链接将在最后。
我有一个图像来显示链接的位置(在textview的末尾)和我的strings.xml代码,以显示链接是在textview的中间编码的。
有人有解决方案吗?
这是显示文本视图的图像,以及结尾处的超链接。
这是图片上该页面的strings.xml
代码:
<string name="title_activity_nieuws"><b>Nieuws</b><br /><br />Volg de ontwikkelingen in en om het Rode Kruis Ziekenhuis op onze website, hier is een internetverbinding voor nodig. <a href='https://www.rkz.nl/nieuws_agenda_nieuws'> <br /><br /><br /><b>Agenda</b><br /><br /> Voorlichtingsbijeenkomsten, symposia, open dagen en andere evenementen die het Rode Kruis Ziekenhuis organiseert vindt u in de Agenda op onze website (een internetverbinding is nodig).</a>
</string>
主要代码:
package com.example.rodekruis;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.text.Html;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.TextView;
public class NieuwsActivity extends Activity implements View.OnClickListener{
TextView HyperLink;
Spanned Text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_nieuws);
findViewById(R.id.button11).setOnClickListener(this);
findViewById(R.id.button12).setOnClickListener(this);
findViewById(R.id.button13).setOnClickListener(this);
findViewById(R.id.button14).setOnClickListener(this);
findViewById(R.id.imageButton1).setOnClickListener(this);
TextView textView =(TextView)findViewById(R.id.textView);
textView.setClickable(true);
textView.setMovementMethod(LinkMovementMethod.getInstance());
String text = getResources().getString(R.string.title_activity_nieuws);
text += "<a href='https://www.rkz.nl/nieuws_agenda_nieuws'> Naar het nieuwsoverzicht </a>";
textView.setText(Html.fromHtml(text));
}
@Override
public void onClick(View v) {
Intent intent = null;
switch (v.getId()) {
case R.id.button11:
Uri uri = Uri.parse("https://www.facebook.com/RKZ.BrandwondencentrumBeverwijk");
intent = new Intent(Intent.ACTION_VIEW, uri);
break;
case R.id.button12:
Uri uri1 = Uri.parse("https://www.youtube.com/user/rodekruisziekenhuis/featured");
intent = new Intent(Intent.ACTION_VIEW, uri1);
break;
case R.id.button13:
Uri uri2 = Uri.parse("https://twitter.com/rodekruiszh?lang=nl");
intent = new Intent(Intent.ACTION_VIEW, uri2);
break;
case R.id.button14:
Uri uri3 = Uri.parse("https://www.linkedin.com/company/rode-kruis-ziekenhuis");
intent = new Intent(Intent.ACTION_VIEW, uri3);
break;
case R.id.imageButton1:
intent = new Intent(NieuwsActivity.this, InfoActivity.class);
break;
}
startActivity(intent);
}
}
答案 0 :(得分:1)
据我了解,您希望在上面显示文字链接&#34;议程&#34;
首先,您应该将您的字符串更改为:
<string
name="title_activity_nieuws"><![CDATA[Nieuws<br/>Volg de ontwikkelingen in en om het Rode Kruis Ziekenhuis op onze website, hier is een internetverbinding voor nodig. <br/><br/><a href=\'https://www.rkz.nl/nieuws_agenda_nieuws\'>Naar het nieuwsoverzicht</a> <br/><br/>Agenda<br/><br/> Voorlichtingsbijeenkomsten, symposia, open dagen en andere evenementen die het Rode Kruis Ziekenhuis organiseert vindt u in de Agenda op onze website (een internetverbinding is nodig).]]></string>
其次,评论出线:
text += "<a href='https://www.rkz.nl/nieuws_agenda_nieuws'> Naar het nieuwsoverzicht </a>";
希望有所帮助
答案 1 :(得分:0)
请删除以下行
text += "<a href='https://www.rkz.nl/nieuws_agenda_nieuws'> Naar het nieuwsoverzicht </a>";
更改title_activity_nieuws
字符串
</a>
的展示位置不正确
<string name="title_activity_nieuws"><b>Nieuws</b><br /><br />Volg de ontwikkelingen in en om het Rode Kruis Ziekenhuis op onze website, hier is een internetverbinding voor nodig. <a href='https://www.rkz.nl/nieuws_agenda_nieuws'> <br /><br /><br /></a><b>Agenda</b><br /><br /> Voorlichtingsbijeenkomsten, symposia, open dagen en andere evenementen die het Rode Kruis Ziekenhuis organiseert vindt u in de Agenda op onze website (een internetverbinding is nodig).