如何使 dataview.list 在 Sencha Touch 2 中可见?

2024-01-10

这里是 Sencha Touch 新手。也就是说,在过去一天左右的时间里,我一直在慢慢地思考这个问题。让我发疯的一件事是表单面板和列表由于某些奇怪的布局原因而没有显示。我不明白为什么。例如,我有以下搜索视图:

Ext.define('NC.view.Search', {
  extend: 'Ext.dataview.List',
  xtype: 'searchpage',
  id: 'search-form',

  config: {
    title: 'Search',
    layout:  'vbox',
    itemTpl: '<div class="name">{name}</div>',
    store: 'Recipes',

    items: [
      {
        xtype: 'toolbar',
        docked: 'top',

        items: [
          { xtype: 'spacer' },
          {
            xtype: 'searchfield',
            placeHolder: 'Search...'
          },
          { xtype: 'spacer' }
        ]
      }
    ]
  }
})

它位于选项卡面板中:

Ext.define('NC.view.Recipes', {
  extend: 'Ext.tab.Panel',
  xtype: 'recipetabpanel',

  config: {
    title: 'Recipes',
    tabBarPosition: 'bottom',
    activeItem: 0,

    items: [
      {
        title: 'Recipes',
        iconCls: 'bookmarks',
        items: [
          {
            xtype: 'searchpage'
          }
        ]
      },
      {
        title: 'Settings',
        iconCls: 'settings',
        html: 'Settings screen'
      }
    ]
  }
})

结果是一个可爱的渲染选项卡面板,顶部有一个停靠的搜索栏,但没有可见的列表项。如果我向列表面板添加一些尺寸:

width: '100%',
height: '200px',

将出现我的数据存储中的列表项。但我不能将高度设置为 100%,因为它会消失(我猜是 CSS 错误)。

那么,我需要什么样的布局层次结构或规范才能使列表显示并占据搜索栏和底部选项卡之间的区域?谢谢!


列表和数据视图使用默认布局,因此您无需指定自己的布局vbox布局。如果您从列表中删除该配置,它应该可以正常工作。

Edit:

好的,我仔细查看了您的应用程序。您可以在这里查看:http://www.senchafiddle.com/#zlT62 http://www.senchafiddle.com/#zlT62(按run).

问题是你没有包括layout: fit在选项卡面板的菜谱项中(Recipes.js,第 15 行)。

它需要一个合适的布局,以便它知道您要添加的新项目的尺寸拉伸。

但您要添加的项目的根本问题是过度嵌套。让我们看一下您的代码:

{
    title: 'Recipes',
    iconCls: 'bookmarks',
    layout: 'fit',
    items: [
        {
            xtype: 'searchpage'
        }
    ]
}

这里发生的事情是创建一个新的 Ext.Container (带有title, iconCls等),然后在该容器中添加searchpage您创建的组件。现在这里是外容器(带有title)将自动拉伸到其容器(选项卡面板)的大小,因为选项卡面板有一个layout: 'card'默认配置。这里的问题是你然后添加another其中的组件(您的searchpage)并且因为您添加的容器(带有title)没有布局(只有它的容器,选项卡面板,有)然后列表(searchpage) 不知道拉伸到项目的大小。

这称为过度嵌套,因为您只需插入searchpage组件作为 tabpanel 的子级并给它一个title and iconCls。你什么should正在做的是这样的:

{
    title: 'Recipes',
    iconCls: 'bookmarks',
    xtype: 'searchpage'
}

正如你所看到的,我只是将 xtype 移动到配置块中,我们可以删除整个项目配置,因为我们添加的项目是实际的searchpage.

这是代码的链接,但已修复:http://www.senchafiddle.com/#qXaQm http://www.senchafiddle.com/#qXaQm

希望这是有道理的。使用 Sencha Touch 可能很难拾取布局。我还建议您阅读布局指南 http://docs.sencha.com/touch/2-0/#!/guide/layouts(如果您还没有)查看 Sencha Touch 2 文档,因为它非常有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使 dataview.list 在 Sencha Touch 2 中可见? 的相关文章

  • 动态使用存储中的额外参数

    我有一个表格 在表格中 我使用的是comboBox with a store xtype combobox id SubContractor name SubContractor fieldLabel Sub Contractors sel
  • 如何在 TreePanel 上拖放后触发事件

    如何使用 Ext tree ViewDDPlugin 的事件 我有一个使用 DDPplugin 的 TreePanel 但我想知道如何监听 drop 事件 这就是我的代码的样子 var monPretree Ext create Ext t
  • Extjs 4(下面有3.4的代码)下载从post请求返回的文件

    我看到了与此略有相关的问题 但没有一个能回答我的问题 我设置了 Ext Ajax request 如下 var paramsStringVar param1 1 param2 two param3 something param4 etc
  • ExtJS TreeGrid 中的复选框列

    有没有办法在新的 extjs 小部件 TreeGrid 中包含复选框列 将节点属性标记为 false true 并不像 TreePanel 那样有效 Cheers 我修改了 Ext ux tree TreeGridNodeUI 类来实现此功
  • 如何使用phoneGap 和Sencha Touch 2 通过android 拨打设备电话?

    我需要通过 android PhoneGap 应用程序使用 sencha 触摸按钮拨打电话 我找到了一个 iphone 插件 可以从phoneGap 应用程序拨打电话 我还没有找到任何适用于 Android 的插件或任何东西 请帮忙 提前致
  • Extjs + D3:渲染冲突

    当我结合 Extjs 和 D3 时 我正在挖掘一些非常有趣的东西 一般来说 ExtJS渲染整个页面的主框架 D3渲染该框架中某个div的动态图 由于Extjs中的渲染逻辑相当复杂 因此我放置D3渲染逻辑的位置似乎至关重要 这里我尝试了两种
  • 如何将html设置为extjs中的元素

    1 如何设置HTML到已经创建的面板或任何其他元素 我是初学者 我尝试了下面的方法来设置 HTML 中的一些内容 var clickedElement Ext getCmp id el child gt clickedElement set
  • ExtJS 中的面包屑导航

    如何在 ExtJS 设计中显示面包屑功能 我正在使用带有边框布局的面板 我想在面板顶部设计碎屑功能 请寄给我一些样品 提前致谢 我想到了两种解决方案 使用面板标题 您将必须操纵面板的标题并在其上创建面包屑 您必须创建面包屑文本 并将其设置为
  • 将分段按钮置于容器中居中?

    我有一个带有分段按钮的选项卡导航栏 其中还包含一张卡片 布局 一切正常 然而 我正在努力让我的 分段按钮位于屏幕中央 我不想让它伸展 我已经包含了主要视图并将所有代码放在煎茶小提琴 http www senchafiddle com KFy
  • 如何使用 JSON 结果更新 Extjs 进度条?

    我在让进度条从 Json 结果中检索进度并根据每 10 秒的计时器检查更新进度条时遇到一些困难 我可以创建这样的 json 结果 success true progress 0 2 我想总体思路是 我需要一个间隔设置为 10 秒的任务 并让
  • 如何设置行高 Sencha Touch List

    如何设置 Sencha Touch List 对象中的行高 我使用 HTML 来格式化行 多行行会变得更高 但如何设置行高 谢谢 格里 要编辑列表元素的默认高度 有两种方法 使用 SASS 创建您自己的 Sencha 主题 官方 Sench
  • 对于 android 系统,使用 Sencha Touch 或 Phonegap 哪一个更好? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 未捕获的 InvalidValueError:setMap:不是 Map 的实例

    当我使用sencha touch2 2 1时 我遇到了一个问题 在查看器中 items id mapCanvas xtype map useCurrentLocation true 在控制器中 var map Ext getCmp mapC
  • NGINX 和 Spark Java 之间的跨源通信

    我正在将 NGINX 和 Sparkjava 用于我的 Web 应用程序 我确信我已正确启用所有 CORS 标头 尽管如此 我还是得到了 XMLHttpRequest 无法加载http localhost 3003 platformAPI
  • Extjs Restful Store,批量发送请求?

    我创建了一个带有商店配置的网格组件 如下所示 Create the store config store new Ext data Store restful true autoSave false batch true writer ne
  • 选择月份或年份时,ExtJS 5 xtype 日期字段不起作用

    当单击下拉菜单选择个别月份 年份时 对话框消失 就像我试图单击一样 fiddle https fiddle sencha com fiddle 9m6 https fiddle sencha com fiddle 9m6 Ext onRea
  • 如何从视图中获取应用程序?

    如何从视图中获取我的应用程序 例如 考虑我有一个应用程序Boo有一个名为Boo view Foo List我想要得到Boo在视图中List Edit 查看这段代码 并查看第 20 行 Ext define Boo view Foo List
  • Auth0 isAuthenticated() 始终为 false

    我正在使用 Extjs 并且我用过本教程 https github com auth0 samples auth0 javascript samples tree master 01 Login设置应用程序和 auth0 这是登录代码 us
  • 如何在 Ext.form.TextField 中显示/隐藏密码

    您能告诉我如何在单击另一个按钮时显示 隐藏密码字段的输入文本吗 我尝试更改该文本字段的 inputType 属性 但它是在当时渲染的 因此没有影响 另一种方法是创建 2 个文本字段并使其可见 不可见 但我不喜欢这样做 因为它看起来像作弊 预
  • 将 GMT 时间转换为当地时间

    我以这种格式从我的服务器获取 GMT 时间 Fri 18 Oct 2013 11 38 23 GMT 我的要求是使用Javascript将此时间转换为本地时间 例如 如果用户来自印度 首先我需要采用时区 5 30并将其添加到我的服务器时间并

随机推荐

  • 通过 ajax 调用 CouchDB 时得到空响应

    我是 CouchDB 的新手 所以请耐心等待 我有一个在虚拟机上运行的 CouchDB 实例 我可以通过浏览器通过蒲团或直接访问它 http 192 168 62 128 5984 articles hot dog 在浏览器中调用该 URL
  • Android 以编程方式关闭 Activity

    活动中与离开屏幕等效的操作是什么 就像当您按下后退按钮时 活动就会消失 如何从活动内部调用它以使其自行关闭 关于Activity finish http developer android com reference android app
  • java.lang.NoClassDefFoundError:com.dropbox.sync.android.DbxAccountManager

    请这不是重复的问题 不知道 但我已经将 jar 放入 libs 文件夹中 并且还完成了以下过程 And also 我已经检查过这个我收到 java lang classnotfoundException com mysql jdbc Dri
  • 可移植的比较和交换(原子操作)C/C++ 库?

    是否有任何小型库 可以将各种处理器的类似 CAS 的操作包装成可跨多个编译器移植的宏或函数 PS The 原子 hpp库 http www boost org doc libs 1 39 0 boost interprocess detai
  • MongooseError:Model.findOne() 不再接受 Function 的回调

    我在设置 mongoose 时遇到了问题 这是我的代码 const SlashCommandBuilder require discordjs builders const testSchema require Schemas js tes
  • Java 中的 Hbase CopyTable

    我想将一个 Hbase 表复制到另一个具有良好性能的位置 我想重用 CopyTable java 中的代码Hbase 服务器 github 页面 https github com apache hbase blob master hbase
  • Android 4.3 之前使用 SimpleDateFormat 的“ZZZZZ”(+03:00) 作为时区

    我在用着SimpleDateFormat有格式yyyy MM dd T HH mm ssZZZZZ 预期输出为 2014 08 26T13 00 14 03 00 但是 仅从 Android 4 3 开始支持 ZZZZZ 结果如下 以上4
  • 为使用 Electron 创建的应用程序签名 Windows 安装程序 (.exe)

    我有一个使用构建的简单应用程序电子框架 我使用以下方式打包了代码electron packager interactive 我还创建了一个Windows 安装程序文件可以使用 Inno Setup 编译器 单个 exe 文件 进行分发 这里
  • Angular 2 中条件必需的验证器指令

    我需要根据其他字段的值将某些表单字段设置为必需或不必需 内置的必需的验证器 https angular io docs ts latest api common RequiredValidator directive html指令似乎不支持
  • C# SecureString 问题

    有没有什么方法可以在不影响安全性的情况下获取 SecureString 的值 例如 在下面的代码中 一旦执行 PtrToStringBSTR 字符串就不再安全 因为字符串是不可变的 并且垃圾收集对于字符串来说是不确定的 IntPtr ptr
  • Android Spinner 设置选择与 2 向绑定

    当配置了 2 路数据绑定时 我正在努力获取一些与 Android spinner 一起使用的功能 我想通过 2 路数据绑定设置微调器的初始值android selectedItemPosition 微调器条目由 ViewModel 初始化并
  • 在之前更改背景颜色后禁用时,JTextField 的背景颜色不会变为“灰色”

    通常当你使用setEditable false or setEnabled false JTextField 的背景 前景色变为 灰色 但是 如果先前已使用设置背景颜色setBackground color 例如white 然后调用setE
  • 所有 Redis 命令都是异步的吗?

    我是 Redis 和 Node JS 的新手 并且一直在尝试将两者一起使用 然而 我对可以一个接一个地使用哪些功能感到有点困惑 随着数据库大小的增加 以下代码似乎同步运行 client dbsize function err numKeys
  • 如何检查 React-Native ES6 中是否安装了组件

    我在我的应用程序中设置一个侦听器 并在广播时使用强制更新 但它给出错误 forceUpdate 无法在未安装的组件上调用 现在如何检查组件是否已安装isMounted 函数已被弃用 use strict var React require
  • 从 C++ 访问 Java 类的最佳方式? (比直接使用JNI更好)

    我必须将一个大型 Java 库集成到一个相当大的 C 应用程序中 解决方案是使用 JNI 但这需要手动编写所有类的代码 例如 Python 有一个很棒的 JPype 解决方案 http jpype sourceforge net http
  • 如何使用雷达获取某个地址的价值

    如果我使用radare2 并且我运行 可以说dr在调试时 它会打印一些寄存器的指针 让我们假装像esp正在解决0x04084308或类似的东西 如果我想得到的值esp指的是 我该怎么做 提前致谢 print rsp寄存器值 0x560207
  • 如何使用命令行将 SQL 查询导出到 TXT

    我要出口select from table从 Linux 命令行将结果保存到文本文件 我该怎么做 谢谢 让 look at link http www tech recipes com rx 1475 save mysql query re
  • C# 中从 1 到 N 的数字相加

    我正在用 C 编写代码 并尝试添加数字 1 和 N 之间的所有数字 N 是在文本框中输入的数字 我正在这样做 至少尝试通过将其放入 while 循环中来做到这一点 我之前已经添加了两个文本框之间的所有数字 但由于某种原因 我快把自己逼疯了
  • 如何将本地MySQL数据库部署到Heroku

    我是 Heroku 的新手 我有一个 Ruby Sinatra 应用程序 我计划在其中使用 MySQL 数据库作为主要数据存储 但是 我不想将结果直接写入 Heroku 上的数据库 相反 我想将结果写入本地数据库 然后能够轻松地将本地数据库
  • 如何使 dataview.list 在 Sencha Touch 2 中可见?

    这里是 Sencha Touch 新手 也就是说 在过去一天左右的时间里 我一直在慢慢地思考这个问题 让我发疯的一件事是表单面板和列表由于某些奇怪的布局原因而没有显示 我不明白为什么 例如 我有以下搜索视图 Ext define NC vi