Appcelerator - 同一控制器的不同 xml
Appcelerator - Different xml for the same controller
是否可以在同一个控制器中为 iOS 设置一个 xml
并为 Android 设置一个 xml
?
例如:
我有问题控制器:UIPhoto.js
我想要 2 个不同的 xml
和 tss
文件:UIPhoto-iOS.xml
和 UIPhoto-Android.xml
并在设备为 iOS 或 Android 时分别充电。
谢谢。
我认为当设备是 iOS 或 Android 时,您不能切换 xml 文件或 tss 文件。
但这也许有帮助:
首先,您可以在 index.js 中使用 Ti.Platform.osname;
检测 OS 并确定像这样的全局变量 Alloy.Globals.OS
。
现在您可以在 js 文件中使用简单的 if 语句切换您的代码:
if(Alloy.Globals.OS == "android"){...}
在您的 tss 文件中,您可以像这样区分平台:
"#title[platform=android]" : {
font : { textStyle : Ti.UI.TEXT_STYLE_HEADLINE }
}
是的,这是可能的,而且非常简单!
您只需要为您要定位的特定平台设置一个不同的文件夹。
想象一下,您在 Views 文件夹中有 index.xml 文件,对吗?
您可以按照习惯对 xml 进行编码,如果您想要 Android 的不同文件(比方说),您只需在 "Views" 文件夹中创建一个名为 Android。使用文件夹结构检查此图像:
注意 'controllers' 中的 Android 文件夹和 'views' 中的 iOS ;)
您可以在视图中使用特定于平台的文件夹
controllers
--- UIPhoto.js
views
--- android
------ UIPhoto.xml
--- iOS
------ UIPhoto.xml
但我建议您使用 tss 而不是使用 2 xml 和 2 tss。
例如在你的 tss:
"Window[platform=ios]":{
fullscreen : true
}
"View[platform=android]" :{
elevation : 8
}
"View[formFactor=tablet]" :{
elevation : 8
}
"View[platform=android formFactor=handheld]" :{
elevation : 8
}
以及您的控制器:
if(OS_IOS){
}
if(OS_ANDROID){
}
是否可以在同一个控制器中为 iOS 设置一个 xml
并为 Android 设置一个 xml
?
例如:
我有问题控制器:UIPhoto.js
我想要 2 个不同的 xml
和 tss
文件:UIPhoto-iOS.xml
和 UIPhoto-Android.xml
并在设备为 iOS 或 Android 时分别充电。
谢谢。
我认为当设备是 iOS 或 Android 时,您不能切换 xml 文件或 tss 文件。
但这也许有帮助:
首先,您可以在 index.js 中使用 Ti.Platform.osname;
检测 OS 并确定像这样的全局变量 Alloy.Globals.OS
。
现在您可以在 js 文件中使用简单的 if 语句切换您的代码:
if(Alloy.Globals.OS == "android"){...}
在您的 tss 文件中,您可以像这样区分平台:
"#title[platform=android]" : {
font : { textStyle : Ti.UI.TEXT_STYLE_HEADLINE }
}
是的,这是可能的,而且非常简单! 您只需要为您要定位的特定平台设置一个不同的文件夹。 想象一下,您在 Views 文件夹中有 index.xml 文件,对吗? 您可以按照习惯对 xml 进行编码,如果您想要 Android 的不同文件(比方说),您只需在 "Views" 文件夹中创建一个名为 Android。使用文件夹结构检查此图像:
注意 'controllers' 中的 Android 文件夹和 'views' 中的 iOS ;)
您可以在视图中使用特定于平台的文件夹
controllers
--- UIPhoto.js
views
--- android
------ UIPhoto.xml
--- iOS
------ UIPhoto.xml
但我建议您使用 tss 而不是使用 2 xml 和 2 tss。
例如在你的 tss:
"Window[platform=ios]":{
fullscreen : true
}
"View[platform=android]" :{
elevation : 8
}
"View[formFactor=tablet]" :{
elevation : 8
}
"View[platform=android formFactor=handheld]" :{
elevation : 8
}
以及您的控制器:
if(OS_IOS){
}
if(OS_ANDROID){
}