Как открыть ссылки в WebView, а не в Safari? - PullRequest
2 голосов
/ 23 января 2010

У меня есть текстовое представление, в котором есть ссылки на веб-страницы, такие как Википедия. Обычно, когда я нажимаю на ссылки, он закрывает мое приложение и открывает Safari.

Как управлять гиперссылкой, чтобы она загружала веб-страницу в UIWebView вместо Safari?

Поместить кнопку над ссылкой - это не то, что мне нужно, потому что это прокручиваемое текстовое представление.

Могу ли я позвонить в Void, потому что мне также нужно начать показывать веб-представление при нажатии на ссылку.

Спасибо. Любые ответы будут оценены.

(мне 12 лет, я учусь программировать для iPhone. См. Spaceulator или посетите timh.me.uk для моего первого приложения)

Ответы [ 2 ]

2 голосов
/ 24 января 2010

Вы можете зарегистрировать свое приложение в качестве обработчика URL для некоторой схемы URL - например, «nttp».Добавьте следующие строки в файл Info.plist:

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLName</key>
        <string>com.test.nttp</string>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>nttp</string>
        </array>
    </dict>
</array>

Когда вы пишете содержимое для своего текстового представления, используйте схему URL «nttp» вместо «http» («nttp: // www.stackoverflow.com/ "вместо" http://www.stackoverflow.com/").

Реализация приложения : handleOpenURL: в вашем делегате приложения:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {

NSString *aUrl = [url absoluteString];

// Use the URL

return YES; }

Например, вы можете заменить"nttp" по "http" и инициировать некоторое веб-представление с ним ...

Надеюсь, что это решение достаточно хорошо ...

1 голос
/ 23 января 2010

AFAIK это невозможно с UITextView.

Но вместо этого вы можете отобразить текст в UIWebView (после преобразования его в HTML), чтобы вы были в UIWebView с самого начала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...