在另一场胜利中获取Titanium.App.Properties或使其在全球范围内可用

Get Titanium.App.Properties in another win or make it global available

本文关键字:Properties 范围内 App Titanium 胜利 一场 获取      更新时间:2023-09-26

如果您不花时间理解我的问题或有一个合理的答案,请不要回答这个问题。我得到了一些远远偏向的答案,我想我解释得很清楚。这个问题会让我发疯,还是有人在Titanium.App.Properties上有一个直接而明确的答案?

我有一个登录表单,将用户名存储在一个中:

Titanium.App.Properties.setString("userName",e.value);

和另一个密码:

Titanium.App.Properties.setString("passWord",e.value);

表单 TextFields 保存这些值(在存储之后),即使我关闭窗口、关闭并重新启动应用程序也是如此。这是因为 App.Properties.getString("value");我想....?!但是当我复制带有其 App.Properties.getString("value")的孔形式时;到另一个窗口,文本字段为空,根本不包含任何值。我知道属性字符串必须在 App.Properties 中的某个位置,但是如何抓取它并在应用程序中的另一个位置使用它?

我的

问题是:如何从我的

var userNameValue = Titanium.App.Properties.getString("userNameValue");

在另一个窗口中可用或用于孔应用程序(全局)?如何抓住它并在应用程序中的另一个位置使用它?我认为没有充分的理由将这些仅单独的单词放入对象(JSON)中,因为用户名仅包含电子邮件地址,而密码仅包含连续字母或数字。但是,如果您的意思是我也有,-我如何从我的文本字段设置它并在我应用程序的其他位置的另一个文本字段中获取它。到目前为止,我没有任何运气。我希望你能帮助我,我可以保持理智。

Titanium.App.Properties.getString("userNameValue");

这是全局可用的,钛对象的任何属性都可以在每个文件中访问。

但是,如果由于某种原因这对您不起作用,并且您想设置一个全局变量,您可以执行以下操作:

  • 创建一个名为 myGlobals.js//或其他任何文件,

把这个放在那里,例如
var myProperties = {};

  • 你想使用它的任何文件中,写在第一行
Ti.include('myGlobals.js');

然后你可以使属性全局可用,例如在应用程序中编写它.js应用程序初始化的地方

myProperties.Username = Titanium.App.Properties.getString("userName");

然后,您可以通过访问属性来获取每个文件中的值myProperties.Username

//of course the Propertie has to be set before you can get them
( Titanium.App.Properties.setString("userName",e.value); ) //like you do it

但是,Titanium.App.Properties.getString("userName");无论如何,应该可以从任何文件中使用(但您可以尝试一下,尽管我认为这样做并不好)

我遇到了类似的问题,它没有从iOS设置中设置的属性中获得任何值作为默认值。

我必须转到设置并手动更改或编辑默认值,然后在重新启动后

Titanium.App.Properties.getString("userName"); 返回应有的值, 我希望这对你有帮助=)

对评论的回答

我很高兴我能帮助你=)

是的,你可以像这样使用焦点事件处理程序:

textfield.addEventListener("focus",function(){
textfield.value = "Test"; 
});

除此之外,您是否对两个窗口使用相同的文本字段?

var Textfield = Ti.Ui.createTextField({...});

并将其添加到 2 个不同的窗口?

win1.add(Textfield);
win2.add(Textfield);

这导致我在 TableViewRows 中使用相同的 Row 2 次出现标签问题

文本仅显示在 1 个标签上,有时它会切换标签我认为您不能将一个相同的钛对象添加到多个其他对象中

也许这可能是罪魁祸首,邓诺只是一个想法=)