Пользовательский UIView для HTML-элемента в UIWebView - PullRequest
3 голосов
/ 29 июня 2011

Я хотел бы добавить пользовательский вид к макету UIWebView, чтобы HTML / JS / CSS описывали макет «страницы» с моими пользовательскими элементами управления в нем. В идеале можно было бы разместить, например, специальный элемент, который запускает обратный вызов в моем коде, который позволил бы мне разместить собственную производную UIView в указанных координатах (и, конечно, прокрутить и изменить масштаб с родительским UIWebView) и с указанным набором параметров.

Выбор бедняка был бы чем-то похожим на этот вопрос: Получение позиции HTML-элемента в UIWebView однако я не уверен, насколько надежным будет изменение макета w.r.t.

1 Ответ

3 голосов
/ 29 июня 2011

Ну, в дополнение к получению координат из SubView, как описано в вашей ссылке, единственный другой трюк - это присоединение к ScrollView UIWebView, который, как правило, является его подвидом, обычно номером 0, если вы не сделали что-то странное , Затем ваш вид будет прокручиваться и масштабироваться с остальной частью вашей веб-страницы. Предполагая, что эти части работают правильно, вы должны опубликовать свой полученный код. Было бы интересно посмотреть.

Например, прикрепление кнопки на 150, 200

    //Make a button
    UIButton * myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton.frame = CGRectMake(150, 200, 50, 30 );
    myButton.titleLabel.text = @"Press me";
    [myButton  addTarget:self action:@selector(pressed:) forControlEvents:UIControlEventTouchUpInside];

     [[[self.myWebView subviews] objectAtIndex:0] addSubview:myButton];

Хотя для надежности вы можете проверить, что self.myWebView имеет подпредставление и что оно принадлежит к классу UIScrollView, прежде чем добавлять в него.

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