一位同学问我一个问题:

sencha touch中xtype创建dataview死活不显示!!
版本2.3.1,MVC模式,sencha touch创建目录
程序很简单,主界面一个tabPanel,两个分页“FoodMain”“UserMain”
想在第一个分页显示一个DataView,结果死活不显示,
Main.js如下:

 //file: app/view/Main.js
Ext.define('myapp.view.Main', {
extend: 'Ext.tab.Panel',
xtype: 'main',
requires: [
'myapp.view.Foodmain',
'myapp.view.Usermain'
],
config: {
tabBarPosition: 'bottom', items: [
{
xtype: 'foodmain',
title: '主页',
iconCls: 'home'
},
{
xtype: 'usermain',
title: '用户',
iconCls: 'user'
}
]
}
});

Foodmain.js如下:

 // file: app/view/Foodmain.js
Ext.define('myapp.view.Foodmain', {
extend: 'Ext.Panel',
xtype: 'foodmain',
id: 'idfoodmain',
config: {
items: [{
xtype: 'dataview',
width: 300,
store: {
fields: ['name', 'age'],
data: [
{name: 'Jamie', age: 100},
{name: 'Rob', age: 21},
{name: 'Tommy', age: 24},
{name: 'Jacky', age: 24},
{name: 'Ed', age: 26}
]
}, itemTpl: '<div>{name} is {age} years old</div>'
}]
}
});

第一分页死活不显示这个dataview,其他控件一律正常。如果再创建个panel,在panel里还是不显示,反正就是死活没有
如图

----------------------------------------------
如果改成直接在Main.js,如下则第三页能正确显示,

 // file: app/view/Main.js
Ext.define('myapp.view.Main', {
extend: 'Ext.tab.Panel',
xtype: 'main',
requires: [
'myapp.view.Foodmain',
'myapp.view.Usermain'
],
config: {
tabBarPosition: 'bottom', items: [
{
xtype: 'foodmain',
title: '主页',
iconCls: 'home'
},
{
xtype: 'usermain',
title: '用户',
iconCls: 'user'
},
// 直接加入Main.js中则第三页能正常显示
{
xtype: 'dataview',
title: 'Test',
iconCls: 'user',
width:300,
store: {
fields: ['name', 'age'],
data: [
{name: 'Jamie', age: 100},
{name: 'Rob', age: 21},
{name: 'Tommy', age: 24},
{name: 'Jacky', age: 24},
{name: 'Ed', age: 26}
]
},
itemTpl: '<div>{name} is {age} years old</div>'
}
]
}
});

第一页仍然没有,第三页能正确显示!
   
----------------------------------以上是问题,我是分割线----------------------------------

解决方案就是:

给dataview设置一个高度

Panel布局在ext之中是比较坑爹的,在Panel中再套用视图控件一定要注意控件的高宽等属性,并且这种布局也比较耗费内存会降低性能,不推荐使用。

所以用的时候能不用尽量不用,最后的代码应该是:

 // file: app/view/Foodmain.js
Ext.define('myapp.view.Foodmain', {
extend: 'Ext.Container',
xtype: 'foodmain',
id: 'idfoodmain',
config: {
items: [{
xtype: 'dataview',
height:'100%',
store: {
fields: ['name', 'age'],
data: [
{name: 'Jamie', age: 100},
{name: 'Rob', age: 21},
{name: 'Tommy', age: 24},
{name: 'Jacky', age: 24},
{name: 'Ed', age: 26}
]
},
itemTpl: '<div>{name} is {age} years old</div>'
}]
}
});

sencha touch 坑爹的Panel,数据不显示了...的更多相关文章

  1. 初识Sencha Touch:面板Panel

    HTML代码: <!doctype html> <html> <head> <meta charset="utf-8"> <t ...

  2. sencha touch list更新单行数据

    http://www.cnblogs.com/mlzs/p/3317570.html 如此章所说,点击按钮需要实时更新视图 操作代码如下: onTasteUp: function (list, rec ...

  3. Sencha Touch 之初接触

    1.Sencha Touch开发与普通web开发有什么区别? Sencha Touch(为方便起见,本文后面一律简写为ST)页面的开发跟普通html页面相比,总体来说没有本质上的区别,只是引入了对ht ...

  4. sencha touch 2 tabpanel中List的不显示问题,解决方案

    笔者在做sencha项目的时候碰到一个需求,就是"好友列表"中分为"未确认好友"和"已确认好友",两个都是一个list,自然想到的就是使用t ...

  5. sencha touch 2.3.1 list emptyText不显示

    如图所示,有时候没有取到任何的数据. 那么我们就需要显示没有获取到内容这一类提示,显示内容通常通过emptyText这个属性来配置. 但是在sencha touch 2.3.1之中有可能会出问题,所以 ...

  6. Sencha touch Panel之间的跳转(如不使用TabPanel或者Carousel控件而产生跳转的动画效果)

    常规的Sencha touch 应用都是"header content footer"结构,这样的结构无疑将使用TabPanel来实现,而且TabPanel肯定是card布局,这样 ...

  7. sencha touch textarea 手机上不显示滚动条,且不能滚动

    最近在项目中发现 sencha touch 中的 textarea 在手机上不显示滚动条,也不能滚动. 在浏览器中之所以能显示滚动条滚动,那是浏览器为 textarea 添加的滚动条. 但在手机中是不 ...

  8. sencha touch结合webservice读取jsonp数据详解

    sencha touch读取jsonp数据主要依靠Ext.data.JsonP组件,在mvc的store文件中定义代码如下: Ext.define('eparkapp.store.ParksNearb ...

  9. 跟我一起玩转Sencha Touch 移动 WebApp 开发(一)

    1.目录 移动框架简介,为什么选择Sencha Touch? 环境搭建 创建项目框架,框架文件简介 创建简单Tabpanel案例 自定义图标的方式 WebApp产品测试和发布 HTML5离线缓存 发布 ...

随机推荐

  1. Xcode 文档注释

    首先要下载一个服务:[下载地址]这是一个老外写的工作流,解压缩,然后双击,安装一下, 选择xcode —> services —> services perference 安装完就会在右边 ...

  2. Oracle中已知字段名查询所在的表名

    select table_name from user_tab_columns where column_name = '字段名'; 这是网上查到的,地址如下:http://blog.163.com/ ...

  3. VS2010保存时控件验证(用onclientclick事件) js脚本

    控件按钮代码: asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" ...

  4. Objective-C 语法之 Debug 表达式

    main.m #import <Foundation/Foundation.h> #import "TestClass.h" int main(int argc, co ...

  5. 183使用 MediaPlayer Framework 框架播放视频

    效果如下: ViewController.h #import <UIKit/UIKit.h> #import <MediaPlayer/MediaPlayer.h> @inte ...

  6. linux cfs调度器_理论模型

    参考资料:<调度器笔记>Kevin.Liu <Linux kernel development> <深入Linux内核架构> version: 2.6.32.9 下 ...

  7. 图解HTTP学习笔记——确认访问用户身份的认证

    前言 认证功能能让Web页面只被有权限的人访问.而认证机制究竟是怎样一个原理呢?通过今天的学习能对这个有个大致的了解. 正文 什么是认证 计算机无法判断对方的身份,需要客户端自报家门. 服务端为确认客 ...

  8. 关于float样式

    在认识float样式之前务必要认识position:absolute position:absolute 功能是:当前节点脱离文档流,对于其兄弟节点(即同一父节点下的节点)已经感觉不到他的存在(即他的 ...

  9. 时间戳Id

    ID:格式据1970.1.1毫秒数 1535091029740  13位 问题:高并发,分布式明显会有问题,网上有雪花算法,但是位数跟我需要的不一样,暂时不考虑,以后研究再用. 参考: https:/ ...

  10. Java终止循环体

    编写程序,是先创建一个字符串数组,在使用foreach语句遍历时,如果发现数组中包含字符串“老鹰”则立刻中断循环.再创建一个整数类型的二维数组,使用双层foreach语句循环遍历,当发现第一个小于60 ...