2012-03-09 1 views
1

페이지 상단에 문자열을 표시하는 임의의 문자열 생성기에서 작업 해 왔습니다. 그 부분은 잘 작동합니다. 하지만 페이지의 맨 아래에 나는 하이퍼 링크가 URL의 끝에 (기본적으로 구글 문자열) 문자열을 추가합니다. 내 문제는 다중 단어 문자열의 첫 단어 뒤에 하이퍼 링크가 멈추는 것입니다. 예를 들어, youtube.com/user/dude은 정상적으로 작동하지만 youtube.com/user/lady gaga 공식은 하이퍼 링크가 "youtube.com/user/lady" 만 강조 표시하고 나머지는 그냥 일반 텍스트로 남겨 둡니다.문자열을 URL에 추가 할 때 공백을 어떻게 제거합니까?

화면 상단에 이미 표시된 문자열을 손상시키지 않고이 모든 것을 포함 할 수 있습니까? 감사합니다.

Resources res = getResources(); 
    myString = res.getStringArray(R.array.myArray); 
      String q = myString[rgenerator.nextInt(myString.length)]; 
btn.setText("http://www.allmusic.com/search/artist/"+q); 

여기 내 문제의 사진입니다 :

http://i40.tinypic.com/2s0obr6.png

답변

1
myString = res.getStringArray(R.array.myArray); 
String q = myString[rgenerator.nextInt(myString.length)]; 
q = q.replaceAll("\\s+", ""); // remove all whitespaces 
btn.setText("http://www.allmusic.com/search/artist/"+q); 

이 트릭을 할해야

여기에 하이퍼 링크에 대한 내 코드입니다. 나는 모든 공백을 ""로 바꿨다. 그러나 당신이 원하는 것, 대체로 "_"밑줄을 대체 할 수있다.

+0

을 당신은 생명 보호기입니다! 정말 고마워. 그것은 매력처럼 일했습니다! – MattDementous

5

사용 URLEncoder 자동으로 URL의를 탈출 :

String text = URLEncoder.encode("The Raincoats", "UTF-8");