我是钛的新手,很难从mysql导出中解析JSON.json是有效的,我对许多不成功的试验感到沮丧.为了简化代码,我把它放在下面.代码只是停止并说:[错误]脚本错误=无法解析JSON字符串
var win = Titanium.UI.currentWindow;
var hotdealjson = "{'hotdeal':[{'place':'bangkok','date':'4D3N','cost':'$4999up'},{'place':'tokyo','date':'3D2N','cost':'$3799up'}]}";
//read json
var response = JSON.parse(hotdealjson);
alert(response.hotdeal.length);
Run Code Online (Sandbox Code Playgroud)
谢谢和问候,理查德
我希望创建一个带标题栏和按钮栏的窗口,但不希望使用选项卡组.
我尝试了以下但没有成功:
var win = Titanium.UI.createWindow({
title: "Home",
backgroundColor: '#bbb',
navBarHidden:false
});
var b = Titanium.UI.createButton({
title:'Button',
style:Titanium.UI.iPhone.SystemButtonStyle.BORDERED
});
win.setToolbar([b]);
win.add(Titanium.UI.createLabel({text: "Label"}));
win.open();
Run Code Online (Sandbox Code Playgroud)
工具栏或标题都不会显示,但是如果我将此内容放在其中TabGroup,则按预期运行.
如果我默认情况下无法获得此行为,有人可以演示如何使用系统呈现的标题样式创建标签(或按钮),是否可以执行类似的操作以获取底部的按钮栏?
以下工作:
var win = Titanium.UI.createWindow({
title: "Home",
backgroundColor: '#bbb',
navBarHidden:false
});
var b = Titanium.UI.createButton({
title:'Button',
style:Titanium.UI.iPhone.SystemButtonStyle.BORDERED
});
win.setToolbar([b]);
win.add(Titanium.UI.createLabel({text: "Label"}));
var tabGroup = Titanium.UI.createTabGroup();
tabGroup.addTab(Titanium.UI.createTab({
title:'Home',
window:win
}));
tabGroup.open();
Run Code Online (Sandbox Code Playgroud) 我可以用Ti.include包含1个js文件,如:
Ti.include("login.js")
Run Code Online (Sandbox Code Playgroud)
但是,我遇到包含多个js文件的问题.作为一种解决方法,我多次写Ti.include,这是不太可读的.
任何想法,如何实现?
我如何在Titanium Mobile App中解析此JSON提要.
{
"data":{
"mat_78":{
"id":"78",
"title":"latest title here",
"teaser":"latest teaser here",
"body":"latest body here",
"logo":"http://sites/default/files/6_0.jpg",
"files":{
"323":{
"fid":"323",
"filename":"joudi1m.jpg",
"tumb":"http://sites/default/files/joudi1m_0.jpg",
"large":"http://sites/default/files/joudi1_0.JPG",
"caption":"joudi1m.jpg"
},
"471":{
"fid":"471",
"filename":"Shot-(0_00_15_09)m.jpg",
"tumb":"http://sites/default/files/Shot(0_00_15_09)m.jpg",
"large":"http://sites/default/files/Shot(0_00_15_09).jpg",
"caption":"Shot(0_00_15_09)m.jpg"
}
}
},
"mat_79":{
"id":"79",
"title":"latest title 2 here",
"teaser":"latest teaser 2 here",
"body":"latest body 2 here",
"logo":"http://sites/default/files/d09a0498a8512.jpg",
"files":{
"339":{
"fid":"339",
"filename":"BO1m.png",
"tumb":"http://sites/default/files/BO1_0.png",
"large":"http://sites/default/files/BO4_0.PNG",
"caption":"BO1m.png"
},
"340":{
"fid":"563",
"filename":"Slide9m.jpg",
"tumb":"http://sites/default/files/Slide9m.jpg",
"large":"http://sites/default/files/Slide9.JPG",
"caption":"Slide9m.jpg"
}
}
},
"mat_link":"mysite.cim/"
}
Run Code Online (Sandbox Code Playgroud)
这是我解析JSON的代码段.不要......它给我'未定义'
var loader = Titanium.Network.createHTTPClient();
loader.open("GET","http://mysite.com/data_iphone/en&lmt=5");
loader.onload = function()
{
var data …Run Code Online (Sandbox Code Playgroud) 我目前正在通过实现一个我认为在 Titanium Appcelerator Desktop SDK 中缺少的功能来学习(通过实践)objective-c:一种使用自定义按钮文本进行模式对话框并可选择将其显示为“工作表”的方法。
一切都很花哨并且工作正常,但是,当将 NSAlert 显示为“表”时,我创建警报的方法会立即返回,这就是我想要防止的。
创建警报的方法返回一个 int (来自 NSAlert 的返回代码)。
里面的代码基本上可以归结为:
int returnCode = -1;
if (displayAsSheet) {
[alert beginSheetModalForWindow:nativeWindow modalDelegate:delegate didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:nil];
} else {
returnCode = [alert runModal];
}
return returnCode;
Run Code Online (Sandbox Code Playgroud)
modalDelegate 是一个实现所需功能的对象:
- (void)alertDidEnd:(NSAlert *)alert returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
Run Code Online (Sandbox Code Playgroud)
现在它只执行 returnCode 的 NSLog。
所以我的问题是:
在“工作表”被解除之前,如何阻止我的方法返回?
或者我以错误的方式处理这个问题?
如何在 Android 上将 Picker Row 标题从黑色更改为白色?我尝试使用 TSS 和带有属性的 XML,但没有成功。
XML
<Alloy>
<View top="80" height="70">
<Label class="calendarViewDayDay" top="5" left="10" color="#FFFFFF" text="L('Rooms')"></Label>
<Picker id="Numberpicker2" top="20" left="10">
<PickerColumn>
<PickerRow title="1" />
<PickerRow title="2" />
<PickerRow title="3" />
<PickerRow title="4" />
<PickerRow title="5" />
<PickerRow title="6" />
<PickerRow title="7" />
<PickerRow title="8" />
<PickerRow title="9" />
<PickerRow title="10" />
</PickerColumn>
</Picker>
</View>
</Alloy>
Run Code Online (Sandbox Code Playgroud) javascript titanium appcelerator appcelerator-titanium appcelerator-alloy
我使用 Appcelerator Studio/Titanium 创建了一个应用程序,最初仅适用于 iOS,我将所有图像直接放入资产文件夹中;app/assets. 所有图像在 iOS 上都可以正常加载,例如:
<ImageView id="logo" image="logoHorizontalWhite.png" />
Run Code Online (Sandbox Code Playgroud)
但是,当我为 Android 构建应用程序时,图像没有显示。
这是否意味着我必须将图像放入 Android 特定目录中,并且我需要为 iOS 和 Android 拥有所有图像的副本?
titanium appcelerator titanium-alloy appcelerator-titanium appcelerator-alloy
我有这样的网络服务:
{"person":{"name account":"Jhon Doe","Image":"image/test","Adress":"New York 43","Recomendations":"40"}}
Run Code Online (Sandbox Code Playgroud)
这就是我想要做的,当我打印datos我得到整个json但当我尝试打印只是名称或图像我没有得到任何东西
var urll = "example.com/example";
var json;
var xhrr = Ti.Network.createHTTPClient({
onload: function() {
json = JSON.parse(this.responseText);
var datos = JSON.stringify(json);
var medicos = datos;
Ti.API.info("Json! "+datos);
}
});
xhrr.open('GET', urll);
xhrr.send();
Run Code Online (Sandbox Code Playgroud)
我试过datos[0].person,datos.person但没有
我正在使用Titanium/Appcelerator构建一个Android应用程序,我正在关注他们的Android主题指南.根据指南,要使用默认的Android主题之一,您必须:
我已经完成了这个,但是在尝试构建时遇到错误:
错误:找不到与给定名称匹配的资源(在'theme'处,值为'@ style/Light').
我注意到我在上面提到的目录结构中创建的主题XML文件也消失了.为什么是这样?我怎样才能让主题发挥作用?
我正在 appcelerator 中使用货币符号在 Android 和 iOS 中构建应用程序。我想让许多参数动态化,因此将此值(u20b9)作为 api 传递给应用程序。由于某些原因无法像这样传递 value(\u20b9) ,所以不带斜线传递。
当我使用以下代码时,它可以正常工作:-
var unicode = '\u20b9';
alert(unicode);
Run Code Online (Sandbox Code Playgroud)
输出:- ?
当我使用以下代码时:-
var unicode = '\\'+'u20b9';
alert(unicode);
Run Code Online (Sandbox Code Playgroud)
输出:- \u20b9
因此,而不是 ? 它会在任何地方打印 \u20b9,这是我不想要的。
提前致谢。
我对javascript很新,我正在努力解决一个简单的问题.我必须将代码分成单独的文件.作为一个例子,我有一个名为Database.js的文件.在该文件中,我有以下几行:
function Database(){
//someStuff
this.fetchAll = function(){
//some stuff
return something;
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想在app.js文件中使用Database.js代码.所以我在app.js中编写以下代码:
var Database = require('Database');
var myDB = new Database();
var result = myDB.fetchAll();
Run Code Online (Sandbox Code Playgroud)
但是,我得到了错误 Script Error = '[object Database]' is not a constructor (evaluating 'new Database()') at app.js (line 3).
我的错是什么?
titanium ×11
appcelerator ×8
javascript ×3
json ×2
android ×1
currency ×1
desktop ×1
ios ×1
ios4 ×1
iphone ×1
nsalert ×1
objective-c ×1
unicode ×1