마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

TextView 하이퍼링크 질문입니다.

0 추천
<TextView
                    android:id="@+id/tv_newsContents"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="6dp"
                    android:layout_marginTop="6dp"
                    android:autoLink="web"
                    android:text=" "
                    android:textColor="#5d6b76"
                    android:textSize="14sp" />

 

TextView에 들어간 옵션들입니다 .

 

그리고 

tv_newsContents.setText(bAct.encodeHTMLEntity((String) map.get("boardContents")));

TextView에 setText하는 부분인데 encodeHTMLEntity 라는 메서드는

 

/**
	 * escape 문자를 HTML 태그로 변환
	 * 
	 * @param param
	 * @return
	 */
	public String encodeHTMLEntity( String param ) {
		if ( null == param || "".equals(param) ) {
			return param;
		}
		param = param.replaceAll("&amp;", "&");
		param = param.replaceAll("&lt;", "<");
		param = param.replaceAll("&gt;", ">");
		param = param.replaceAll("&quot;", "\"");
		param = param.replaceAll("&#x27;", "\'");
		param = param.replaceAll("&#x2F;", "/");
		param = param.replaceAll("&00", "null");
		param = param.replaceAll("&#33;", "!");
		param = param.replaceAll("&#45;&#45;", "--");
		return param;
	}

이런 소스를 가지고있습니다.

"<a href=\"http://news.heraldcorp.com/view.php?ud=20130819000164&md=20130821003940_AT\" target=_blank>전체기사 보러가기></a>"

이렇게 문자열 마지막에 저런 a태그가 들어오는데요

전체기사 보러가기에 하이퍼링크가 걸려야하는데

 

TextView link = (TextView) findViewById(R.id.link); 
link.setText(Html.fromHtml("<a href=\"http://www.google.com\">google</a>")); 
link.setMovementMethod(LinkMovementMethod.getInstance());

 

이런식으론 여러번 시도해보았습니다만 ㅠㅠ

하이퍼링크가 먹히질않더라구요 ...

도움좀 부탁드립니다 

정에약한마음 (1,160 포인트) 님이 2013년 12월 12일 질문

1개의 답변

0 추천
 
채택된 답변

TextView에 autoLink 속성 제거하시면 잘 될거 같네요 (android:autoLink="web" 제거)

mono1 (3,100 포인트) 님이 2013년 12월 12일 답변
정에약한마음님이 2013년 12월 12일 채택됨
헐 ... 진짜네요 ㅠㅠ
감사합니다 엉엉 ㅠㅠ
그럼 혹시 \r\n 이런것은 어떻게 적용할수있는 방법없을까요?
오토링크랑?
줄바꿈은 html 타입으로 써주면 되니 <br> 태그로 처리하면 되지 않을까요?

오토링크 적용은 아래 내용 참고하시면 될겁니다.

http://developer.android.com/reference/android/widget/TextView.html#setAutoLinkMask%28int%29

http://developer.android.com/reference/android/text/util/Linkify.html#ALL
...