入门
开发指南
- 模块
- 控件基础知识
- 控件树
- 选择器 API
- 布局
- 手势和触摸事件
- W3C APIs 兼容
- Cordova 插件支持
- EcmaScript 6,TypeScript 和 JSX
- Windows 10 支持说明
- 构建 Tabris.js App
- Tabris.js App 补丁
API 参考文档
- app
- device
- fs
- localStorage
- ui
- ActionSheet(操作列表)
- AlertDialog(对话框)
- CanvasContext
- InactivityTimer(闲置定时器)
- NativeObject
- Popup(弹出窗)
- Timer(计时器)
- WidgetCollection
控件
- Action
- ActivityIndicator
- Button
- Canvas
- CheckBox
- CollectionView
- Composite
- Drawer
- ImageView
- NavigationBar
- NavigationView
- Page
- Picker
- ProgressBar
- RadioButton
- ScrollView
- SearchAction
- Slider
- StatusBar
- Switch
- Tab
- TabFolder
- TextInput
- TextView
- ToggleButton
- Video
- WebView
- Widget
自定义控件
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
自定义控件
自定义控件用JavaScript和原生平台支持的语言编写。它们使用原生Tabris.js客户端的接口,并被封装在Cordova插件中。本文将介绍JavaScript的实现部分。
用JavaScript定义自定义控件
自定义控件必须继承自Widget
。它能够与自定义控件的原生部分进行通信。
自定义控件类必须覆写_nativeType
属性的getter以返回与原生实现匹配的类型:
class MyCustomWidget extends Widget {
get _nativeType() {
return 'myLibrary.MyCustomWidget';
}
}
属性
调用_nativeSet(name, value)
和 _nativeGet(name)
来与原生平台交换属性。
class MyCustomWidget extends Widget {
...
set myProperty(value) {
this._nativeSet('myProperty', value);
}
get myProperty() {
return this._nativeGet('myProperty');
}
...
}
事件
覆写_listen
方法,并调用_nativeListen
以便在原生控件触发事件时收到通知。
class MyCustomWidget extends Widget {
...
_listen(name, listening) {
if (name === 'myEvent') {
this._nativeListen(name, listening);
} else {
super._listen(name, listening);
}
}
...
}
兼容iOS 9
为了与iOS 9中使用的JavaScriptCore版本兼容,某些ES6语言特性需要编译(参考EcmaScript 6)。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论