iPhone Open DATA: URL В Safari

То, что вы представили выше, выглядит следующим образом:

  1. Видимо, вашим ImageView присвоено OnLongClickListener
  2. Пользователь щелкает пункт меню панели инструментов R.id.saveImage, и вы пытаетесь сохранить изображение на основе индикации isLongClickable

Если истина, вышеупомянутое неверно, потому что isLongClickable в основном является просто индикацией того, что данному элементу управления назначено OnLongClickListener.

Что вам следует делать: либо сохраняйте данные внутри каждого соответствующего OnLongClickListener (и его onLongClick даст вам представление, то есть ImageView), ИЛИ если вам нужно сделать сохранение только после [ 117] щелкните, затем в OnLongClickListener вы должны как-то сообщить своему приложению, что данный ImageView был долго нажат, а затем после R.id.saveImage щелкнуть, пролистать список записанных длинных щелчков ImageView и выполнить сохранение.

9
задан tshepang 6 March 2014 в 23:50
поделиться

2 ответа

В iPhone OS 2.2.1 и 5.0.1, и в средстве моделирования и на устройстве, открывая данные: URL работает отлично в a UIWebView но использование openURL точно ничего не делает.

И Safari будет с удовольствием, и правильно, представлять такой URL, если Вы будете готовы ввести один в панель навигации, таким образом, это - ясно проблема с sharedApplication openURL, не с Safari.

Если строка base64 достаточно коротка (меньше, чем 2K, вероятно), Вы могли бы перенести его как параметр запроса к http URL, который просто возвращает перенаправление URL данных. Затем Вы могли использовать openURL для открытия http URL. Да, это означает возвращаться через некоторый сервер, но он работал бы.

С другой стороны, так как Safari, очевидно, не сделал этого, Вы могли сказать iPhone, что Ваше приложение является обработчиком для данных: схема и берет на себя ответственность за рендеринг содержания в UIWebView. Это кажется вероятным перестать работать в будущем, все же.:-)

Куда URL данных прибывает из во-первых? Возможно, Вы могли создать веб-страницу, содержание которой является не чем иным как <iframe src="<the data url>"/> и снова, используйте openURL на том URL.

7
ответ дан 4 December 2019 в 23:41
поделиться

Это должно сделать это:

NSURL *yourURL = [[NSURL alloc] initWithString:yourStr];    
[[UIApplication sharedApplication] openURL:yourURL];
[yourURL release];

принятие "yourStr" является NString с URL, где Ваши данные расположены.

-1
ответ дан 4 December 2019 в 23:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: