sencha touch:5个简单的问题

sencha touch: 5 simple questions

本文关键字:问题 简单 5个 touch sencha      更新时间:2023-09-26

我是sencha touch的新手,我有一些简单的问题。我不需要100%的工作代码作为答案,但如果有人能给我指明正确的方向,那就太好了。但请记住,感应触摸对我来说是新的。我使用感应触摸1.x.

让我先解释一下我的应用程序的功能。它显示了一个包含项目的列表(通过json代理从数据库中获取)。您可以点击显示表单的项目。然后您可以更新或删除该项目。在列表屏幕上,您还可以添加一个新项目。很简单:-)

以下是我的问题:

1/日期选择器字段:

在表单中有一个CCD_ 1。默认格式为month/day/year。我住在欧洲,所以甲酸盐应该是day/month/year。有了slotorder,我可以改变这一点。但是字段本身仍然有错误的格式。我试着用一个听众来解决这个问题:

change: function() {
this.fieldEl.dom.value = this.getValue().format('d/m/Y'); 
}

这在选择日期时有效。但是当点击列表中的项目时,datepickerfield仍然是错误的格式。我尝试使用其他监听器,如afterrenderscope等,但都不起作用。

2/数字字段:

在模型中,我有一个字段duration。它在sql表中属于time类型。所以格式是datepickerfield0。在表格中,我有3个numberfields。一个表示小时,一个表示分钟,一个代表秒。

在点击列表中的项目时,如何将字段duration拆分为3个部分并填写3个numberfields

3/上下文选择字段

表单中有一个selectfield,其值取决于登录的用户。如果用户1已登录,则值应为xyz。如果用户2已登录,则值应为xab等。

因此,在打开表单时,selectfield应该预先填充数据。它应该从服务器调用一个函数来获取正确的数据。如何做到这一点?

4/像twitter一样刷新列表

我希望列表在到达末尾时获取更多项目(如twitter)。我在网上发现了一些东西:PullRefresh插件。但我做不到。

有什么想法吗?

5/设置列表样式

是否可以单独设置列表中的每个项目的样式?您可以使用styleHtmlCls等,但这是整个列表的样式。

提前非常感谢。

1-这很容易设置:

picker: {
slotOrder: ["day","month","year"]
}

2-我不明白2给出更清晰的

3-您需要使用本地存储用于此

4-对于分页尝试这个链接sencha列表分页插件

5-您不能直接对每个项目进行不同的样式设置,但您可以通过设置其样式配置来为列表中的每个项目定义样式

对于那些感兴趣的人,我的解决方案。

1/此code Ext.apply(Ext.util.Format, {defaultDateFormat: 'd/m/Y'});设置应用程序中所有日期的格式。

2/我在我的模型中创建了3个额外的字段。字段"duration"有3个"convert"字段,格式为"hh:mm:ss"。这是代码(字段duration_m和duration_s相同):

name: 'duration_h', 
            convert: function(value, record) 
{
           var duration= record.get('duration'), 
                 splits    = duration.split(":"), 
                 duration_h = splits[0];
           return duration_h;             
} 

在我的表单中,我现在使用与这3个额外字段链接的3个数字字段。保存数据时千万不要忘记PHP代码:model.set('duration_h','');否则,这些字段不会在模型中设置,并且一直为空。

3/和4/我还没有解决。