我想知道是否有一种方法可以在我单击按钮时打开带有预定义消息的对话框,用户可以(i)编辑(文本字段)(ii)取消(按钮)和( iii) 按确定(按钮)然后发推文。 我正在通过以下链接使用代码鸟模块和钛 https://gist.github.com/Rogichi/5905010 这使我能够发送一条推文,但只能使用一组文本,无法编辑、按确定或取消。此外,它仅在您第一次在手机上运行该应用程序时有效,之后,我必须卸载并重新安装才能再次发送。 任何帮助都将不胜感激
最佳答案
您必须创建带有两个按钮和一个文本区域的窗口,以便用户可以编写自己的推文。我设法使用你提到的代码鸟文件做到了这一点,你所要做的就是像这样编辑 setTweet 函数:(其他一切保持不变,这样做可以发送尽可能多的推文而无需重新启动应用程序。祝你好运)
function setTweet(){
var post = Ti.UI.createButton({
title : 'Send',
right: 10,
width: 80,
height: 30,
top: 10
});
var content = Ti.UI.createTextArea({
color: '#888',
font: {fontSize:20, fontWeight:'bold'},
textAlign: 'left',
value: 'compose a tweet',
top: 60,
width: 280, height : 140
});
var floatW = Ti.UI.createWindow({
backgroundColor:'#fff',
borderWidth:8,
borderColor:'#999',
height:200,width:300,
borderRadius:10
});
floatW.add(post);
floatW.add(content);
floatW.open();
post.addEventListener('click', function(e){
var tweet = content.getValue();
cb.__call(
"statuses_update",
{"status": tweet },
function (reply) {
Ti.API.info("Respuesta al publicar: ");// ...
Ti.API.info(reply);// ...
///////////INSPECT OBJECT
function inspeccionar(obj){
var msg = '';
for (var property in obj){
if (typeof obj[property] == 'function')
{
var inicio = obj[property].toString().indexOf('function');
var fin = obj[property].toString().indexOf(')')+1;
var propertyValue=obj[property].toString().substring(inicio,fin);
msg +=(typeof obj[property])+' '+property+' : '+propertyValue+' ;\n';
}
else if (typeof obj[property] == 'unknown')
{
msg += 'unknown '+property+' : unknown ;\n';
}
else
{
msg +=(typeof obj[property])+' '+property+' : '+obj[property]+' ;\n';
}
}
return msg;
}
//Ti.API.info(inspeccionar(reply));
//Ti.API.info(inspeccionar(reply.errors[0]));
//Ti.API.info(reply.httpstatus);
if(reply.httpstatus == 200)
floatW.close();
else
alert(reply.errors);
}
);
});
}
关于javascript - 如何打开可编辑的对话框来发布推文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18715278/