ios – TVML自定义模板

我正在为使用tvOS的Apple TV构建一种网上商店,我很陌生!

我想知道,你能用xml写自己的模板吗?还是你坚持苹果提供的默认模板?也许可以将不同的模板相互组合?

最佳答案 有点.您可以编写自己的模板,但它涉及几个不同的部分.此外,我不知道自定义书面模板与 NavigationDocument交互的方式.所以,你只限于:

>所有Apple模板
>所有自定义模板
>带有一些自定义叶模板的Apple模板.

通过(3)我的意思是你使用Apple模板来驱动大多数页面,但是你推送的最后一页是全屏模式视图,它们只是掩盖了NavigationDocument模板堆栈.

假设您想尝试(2)或(3),请继续阅读.

原生部分

首先,你需要原生部分.这是用于构建基于UIKit的类的Objective-C或Swift代码,可以显示自定义UI和处理事件.

本机部分使用JavaScriptCore将自身暴露给TVApplicationControllerDelegate的 – [appController:evaluateAppJavaScriptInContext:]方法中的JavaScript运行时.

我建议使用Objective-C,因为使用JavaScriptCore所需的语法更简单.

模板处理部分

这可以是JavaScript或本机.它读取您的JSON或XML数据,通过您先前公开的接口创建本机对象,然后将JSON / XML值映射到本机对象的属性中.最后,您需要将视图呈现给屏幕,要么覆盖NavigationDocument模板堆栈,要么使用您自己的自定义导航堆栈.

点赞