2014-06-16 6 views
22

UIWebView를 사용하여 사용자 지정 브라우저를 작성하고 있습니다.Swift에서 stringWithFormat을 사용하여 url 앞에 http : //를 붙이는 방법

사용 사례 : 사용자가 주소 표시 줄에 "www.abc.com"을 입력합니다. 오류가 아래의 발생 :

Error Domain=WebKitErrorDomain Code=102 "Frame load interrupted" UserInfo=0x19860770 {NSErrorFailingURLKey=file://www.abc.com, NSErrorFailingURLStringKey=file://www.abc.com, NSLocalizedDescription=Frame load interrupted}

이유 : URL이 앞에 추가 할 필요에 "http : //"

내가있는 NSString의 stringWithFormat 방법을 사용하고 싶습니다,하지만 난을 얻을 수없는 것 올바른 구문. Objective-C에서 우리는 다음과 같은 것을 가지고있다.

NSString* modifiedURLString = [NSString stringWithFormat:@"http://%@", urlString]; 

스위프트에서는 방법이 없습니다.

var modifiedURLString: String = String(`stringWithFormat not here?!...`) 

난 후 신속한와 목표 C를 혼합하려고 :

VAR의 modifiedURLString :있는 NSString =있는 NSString stringWithFormat not here?!...

그럼 I 직선해서 오브젝티브 C 시도 :

는 NSString * modifiedURLString = [NSString stringWithFormat : @ "http : //", urlString];

도움 주셔서 감사합니다. 감사합니다, 키스

+3

의도 된 http : // "접미사"가 작동하지 않았습니까? – Tommy

+0

이 자습서를 사용하고있었습니다. "사용자 입력 수정"아래를보십시오 http://iosdeveloperzone.com/2011/05/22/tutorial-building-a-web-browser-with-uiwebview-part-3/ – kmiklas

답변

8

당신은 문자열 보간을 사용할 수 있습니다

let site = "www.abc.com" 
let url = "http://\(site)" 
+0

그냥 궁금해서, NSLocalizedString에서 온거야? 이 작업을 신속하게 수행 할 수있는 방법이 있습니까? – rckoenes

63

는 NSString의 formatWithString의 등가 : 그냥 "형식 :"다음과 같은 화면이 나타납니다,하지만 예를 들어 그렇게 할 실제 필요가 없습니다, 당신 주셨다. 그냥 그냥 (비록 4 방식) 여기에 완료되는 위해 ...

let urlString = "www.abc.com" 
var modifiedURLString = NSString(format:"http://%@", urlString) as String 
// or just 
modifiedURLString = String(format:"http://%@", urlString) 
// or 
let simpler = "http://" + urlString 
// or use string interplotaion 
let simplest = "http://\(urlString)" 
16

을 문자열 또는 사용 보간을 추가, 여기 옵션입니다

1 :있는 NSString의 stringWithFormat을 사용하는 신속한 방법 :

let url = NSString(format: "http://%@", aSuffix) 

2 : Swift의 능력을 "+"연산자와 연결합니다.

let url = "http://" + aSuffix 

3 : NSString의 stringByAppendingString() 메서드를 사용하십시오.

let url = "http://" 
url.stringByAppendingString(aSuffix) 

4 : 문자열 보간.

let url = "http://\(aSuffix)" 
+1

첫 번째 방법으로 닫는 괄호를 놓쳤습니다. – Milo