NSView против Webview - PullRequest
       11

NSView против Webview

2 голосов
/ 17 ноября 2010

Есть ли недостатки в использовании WebKit WebViews по сравнению с использованием NSView?

Я использую веб-представление для создания пользовательского интерфейса приложения.Само приложение не обладает большой интерактивностью.Я видел, как на этом и других сайтах упоминалось, что использование WebView может быть удобным средством создания прототипов.

Однако для нашей команды это кажется идеальным способом создания готовых к работе пользовательских интерфейсов, особенно с помощью WebKit.Мы что-то упустили?

Спасибо, Росс

Ответы [ 2 ]

4 голосов
/ 23 ноября 2010

Хорошо, значит, вы, похоже, спрашиваете, имеет ли какой-либо недостаток использование интерфейса HTML (представленного через WebView) для вашего приложения.

Ответ на этот вопрос "нет", по крайней мере "нетобязательно".Это аналогично созданию веб-приложения для iPhone, и есть несколько отличных примеров.Предостережение заключается в том, что многие из этих сайтов в конечном итоге воссоздают внешний вид нативного приложения для iPhone, обеспечивают согласованность и заставляют пользователей чувствовать себя как дома.

Учитывая, что вы разрабатываете нативныйВ любом случае, кажется, что стыдно выбрасывать или воссоздавать отзывчивость и внешний вид родного Chrome.Конечно, для определенных типов приложений (игры являются очевидным примером) у пользователя нет никаких ожиданий относительно пользовательского интерфейса приложения, так что вы можете сами себя выбить.

Другой фактор, который следует учитывать, - это количествоинтерактивность (хотя я заметил, что вы говорите, что не так много в вашем случае).Встроенные элементы управления сделают кодирование намного проще, чем необходимость захвата всего пользовательского ввода через «фильтр» WebView, хотя его использование может упростить первоначальную компоновку экранов.

Я надеюсь, что этоответ, который вы искали (хотя в основном он не технический).

0 голосов
/ 20 ноября 2010

Как вы могли бы знать, если бы вы потратили некоторое время на документацию, вам показалось бы, что WebView является подклассом NSView.

В документации говорится о WebView:

WebView - это базовый класс представлений в инфраструктуре WebKit, который управляет взаимодействиями между классами WebFrame и WebFrameView.Чтобы встроить веб-контент в ваше приложение, вы просто создаете объект WebView, присоединяете его к окну и отправляете сообщение loadRequest: в его основной фрейм.

И о NSView:

NSView - это класс, который определяет базовую архитектуру рисования, обработки событий и печати приложения.Вы обычно не взаимодействуете с API NSView напрямую;скорее, ваши пользовательские классы представления наследуются от NSView и переопределяют многие из его методов, которые автоматически вызываются Application Kit.Если вы не создаете собственный класс представления, вам нужно использовать несколько методов.

Итак, вот ответ на ваш вопрос:

Есть ли недостаткииспользование WebKit WebViews по сравнению с использованием NSView?

Да.Вы не можете отображать любой веб-контент с NSView.Вот для чего вам нужно WebView.Тем не менее, я предлагаю прочитать еще немного документации.

...