0

我正在尝试使用适用于 Android 设备的 Corona 进行构建。是一个很简单的app,只使用了de 'ui'的引用

local ui = require("ui");


local btnright = ui.newButton{
    defaultSrc = "button-right.png",
    defaultX = 100,
    defaultY = 100,
    overSrc = "button-right-over.png",
    overX = 100,
    overY = 100,
    onEvent = buttonHandler,
    id = "btn-right"
}

但是,当我生成 apk 时,只显示黑屏并在模拟器中显示按钮

4

3 回答 3

2

在android中命名文件或图像时,您不能使用特殊字符,它只能包含[a-z0-9_.]并且不能包含大写字母。您可以在电晕模拟器上看到小部件按钮,因为模拟器可以读取特殊字符。有关资源名称的更多详细信息,请参阅此链接 并将您的小部件名称更改为:

local ui = require("ui");
local btnright = ui.newButton{
    defaultSrc = "button-right.png",
    defaultX = 100,
    defaultY = 100,
    overSrc = "button-right-over.png",
    overX = 100,
    overY = 100,
    onEvent = buttonHandler,
    id = "btn-right"
}

对此

local ui = require("ui");   
local btnright = ui.newButton{
    defaultSrc = "button_right.png",
    defaultX = 100,
    defaultY = 100,
    overSrc = "button_right_over.png",
    overX = 100,
    overY = 100,
    onEvent = buttonHandler,
    id = "btn-right"
}
于 2013-08-04T07:56:24.140 回答
0

您使用的是哪个版本的电晕?

为什么不试试 widget.newButton()?

看一下这个。http://docs.coronalabs.com/api/library/widget/newButton.html

于 2013-08-04T06:29:51.250 回答
0

允许使用大写字母。我不确定连字符,但它们是 Linux 和 Unix(Android 和 iOS 使用的核心操作系统)中的有效字符但是可能的原因是区分大小写。Android 和 iOS 等设备区分大小写。模拟器不是,所以如果你有一个名为:

按钮-right.png

实际文件名是:

按钮-right.PNG

它不匹配并且会产生错误。您需要将设备连接到计算机并查看设备的控制台日志。如果您不知道如何操作,请参阅此博客文章:

http://www.coronalabs.com/blog/2013/07/09/tutorial-basic-debugging/

于 2013-08-04T18:29:15.680 回答