Первое, вероятно, может быть достигнуто с помощью Javascript - это всего лишь предположение с моей стороны;вы используете JS для связи с кодом Obj-C для отображения пользовательского UIActionSheet.
Второе возможно, если вы посмотрите достаточно глубоко:
UIWebView
имеет объект NSURLRequest
,NSURLRequest
имеет valueForHTTPHeaderField:
, что позволяет получить общий размер содержимого запроса.NSURLRequest
также имеет HTTPBodyStream
, то есть NSInputStream
, который должен дать вам общее количество прочитанных байтов.
Наконец, для отлова «всплывающих» окон, я предполагаю, что они используютделегировать обратные вызовы UIWebView для достижения этой цели, с некоторыми умными string-fu, чтобы определить, является ли это всплывающим окном или нет (оценивая Javascript и тому подобное).