首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >钛Javascript运行时错误

钛Javascript运行时错误
EN

Stack Overflow用户
提问于 2014-10-23 00:26:26
回答 1查看 340关注 0票数 0

试图创建一个移动Android应用在钛使用钻下导航。

显然,这部分代码有问题:

代码语言:javascript
复制
    // create the main menu container   
    var main_menu = Ti.UI.createTableView({
    style:Titanium.Android.TableViewStyle.GROUPED,
    scrollable:true   
    });

错误是:

错误: TiExceptionHandler:(TiExceptionHandler) 1,257 -在app.js:21,42错误中: TiExceptionHandler:(main) 5,262 -消息: Uncaught :无法读取未定义错误的“分组”属性: TiExceptionHandler:(main) 4,266 -来源: V8Exception:发生在app.js:21的异常:未定义的TypeError:无法读取属性“分组”

正在使用基于以下内容的代码:

代码语言:javascript
复制
    // create the main menu container   
    var main_menu = Ti.UI.createTableView({
    style:Titanium.UI.iPhone.TableViewStyle.GROUPED,
    scrollable:false   
    });

可以看到,我将"Titanium.UI.iPhone“改为"Titanium.Android",这似乎不是安卓平台的正确语法。

有人帮忙吗?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-23 01:33:24

如果您检查文档,您可以看到"style“属性仅对iOS可用。

编辑:对于Android,似乎不存在本机的分组表视图样式(这就是为什么只针对iOS)。有一种观点认为,你应该只使用平台上可用的UI元素,而不是试图让你的跨平台应用在这两个平台上看起来完全一样。另一个人会说,也许您可以这样做(取自这里):

代码语言:javascript
复制
var win = Titanium.UI.currentWindow;
win.barColor = "FB9D3B";
win.backgroundColor = '#AEBCAD';

var isAndroid = false;
if (Titanium.Platform.name == 'android') {
    isAndroid = true;
}

// create table view data object
var data = [
    {title:"Row 1", color:'black', font:{fontWeight:'bold'}, hasChild:true, url:'row1.js'},
    {title:"Row 2", color:'black', font:{fontWeight:'bold'}, hasChild:true, url:'row2.js'},
];

if(false == isAndroid) {
    // create table view
    var tableViewOptions = {
        data:data,
        style:Titanium.UI.iPhone.TableViewStyle.GROUPED,
        headerTitle:"Header for iOS",
        backgroundColor:'transparent',
        rowBackgroundColor:'white'
        };
}

if(true == isAndroid) {

    var tableHeader = Titanium.UI.createLabel({
        color:'#000',
        text:"Header for Android",
        font:{fontWeight:'bold'},
        top:20,
        left:30,
        width:300,
        height:20
    });

    win.add(tableHeader);

    var tableViewOptions = {
        data:data,
        backgroundColor:'white',
        rowBackgroundColor:'white',
        top:40,
        height:98,
        width:300,
        borderWidth:1,
        borderRadius:10
    };
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26519358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档