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

但是在sencha touch的开发使用过程中,我们总是会碰到不给高度就不显示的问题,非常之恼火,浪费我大把时间研究

笔者在开发这个需求的时候也碰到了,下来就分享一下方案吧:

  1,先来看看有问题的方案,以下是代码:

  

Ext.define("mine.view.ListFriendView", {
extend: "Ext.tab.Panel",
xtype: "listFriendView",
requires: [
'Ext.data.Store'
],
config: {
tabBarPosition:'top',
style:'background: #ececec;',
cls:'x-tab2',
items: [
{
xtype: "toolbar",
title: "我的好友",
docked: "top",
ui: "dark",
items: {
xtype: "button",
cls: "backBtn",
text: "返回",
handler: function () {
var backid = Ext.Viewport.getInnerItems().length
Ext.Viewport.remove(this.up('listFriendView'), true);
Ext.Viewport.setActiveItem(backid - 2);
}
}
},
{
          xtype:"list",
title:'未确认好友',
          emptyText:"没有数据",
scrollable: true,
         itemTpl:"........."
},
{
          xtype:"list",
title:'已确认好友',
         emptyText:"没有数据",
scrollable: true,
         itemTpl:"........."
}
]
} })

这样写的话,如果不给定list的高度,那么这个list是不会被显示出来的.

但是给的高度要是太小,List数据显示不完全,给的太高,如果没有数据的话,emptyText就会被挤到可视区域以外(可以用审查元素看到确实存在,但是在很下面,看不到),这就是困扰到我们的问题,

以下是解决方案,请看代码:

Ext.define("mine.view.ListFriendView", {
extend: "Ext.tab.Panel",
xtype: "listFriendView",
requires: [
'Ext.data.Store'
],
config: {
tabBarPosition:'top',
style:'background: #ececec;',
cls:'x-tab2',
items: [
{
xtype: "toolbar",
title: "我的好友",
docked: "top",
ui: "dark",
items: {
xtype: "button",
cls: "backBtn",
text: "返回",
handler: function () {
var backid = Ext.Viewport.getInnerItems().length
Ext.Viewport.remove(this.up('listFriendView'), true);
Ext.Viewport.setActiveItem(backid - 2);
}
}
},
{
title:'未确认好友',
scrollable: true,
xtype:"noMyFriendListView"
},
{
title:'已确认好友',
scrollable: true,
xtype:"myFriendListView"
}
]
} });

这里将两个需要切换的list写到两个单独的view中

"noMyFriendListView","myFriendListView",

然后在这个tabpanel中使用xtype的方式引用这两个view,

这样就完美解决了!

sencha touch 2 tabpanel中List的不显示问题,解决方案的更多相关文章

  1. sencha touch 模仿tabpanel导航栏TabBar的实现代码

    这篇文章介绍了sencha touch 模仿tabpanel导航栏TabBar的实例代码,有需要的朋友可以参考一下 基于sencha touch 2.2所写 效果图: 代码: /* *模仿tabpan ...

  2. sencha touch 在安卓中横屏、竖屏切换 应用崩溃问题

    答案来至于 Sencha Touch 交流 @周旭 这是由于横竖屏转换导致activity重跑onCreate方法导致的,有两种解决方案:1.横竖屏转换的时候不要重新跑onCreate方法,这个可以在 ...

  3. sencha touch 模仿tabpanel导航栏TabBar(2013-11-7)

    基于sencha touch 2.2所写 代码: /* *模仿tabpanel导航栏 */ Ext.define('ux.TabBar', { alternateClassName: 'tabBar' ...

  4. sencha touch 坑爹的Panel,数据不显示了...

    一位同学问我一个问题: sencha touch中xtype创建dataview死活不显示!!版本2.3.1,MVC模式,sencha touch创建目录程序很简单,主界面一个tabPanel,两个分 ...

  5. sencha touch 2.3.1 list emptyText不显示

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

  6. sencha touch 在视图中显示一个html页面

    Ext.define('app.view.about.About', { alternateClassName: 'about', extend: 'Ext.Container', xtype: 'a ...

  7. Tomcat 中 jsp 中文乱码显示处理解决方案

    原地址: http://blog.csdn.net/joyous/article/details/1504274 初学JSP,尤其是Tomcat环境(GlassFish默认UTF-8,则不存在此类问题 ...

  8. android 布局文件 ScrollView 中的 listView item 显示不全解决方案

    import android.content.Context;import android.util.AttributeSet;import android.widget.ListView; /** ...

  9. html5外包—长年承接html5外包业务:《Sencha Touch权威指南》下载

    <Sencha Touch权威指南>内容简介:如何才能全面而透彻地理解和掌握移动应用开发框架Sencha Touch并开发出令人心动的移动应用?<Sencha Touch权威指南&g ...

随机推荐

  1. 关于rsync的密码问题

    今天在做关于rsync的实验时,发现关于rsync的密码问题还是有几点需要注意的,因此特意归纳了一下(rsync的版本是3.1.0): 1.服务器端的密码文件的格式必须为“用户名:密码”,所属者必须为 ...

  2. PHP数组的操作

    一.数组操作的基本函数数组的键名和值array_values($arr);获得数组的值array_keys($arr);获得数组的键名array_flip($arr);数组中的值与键名互换(如果有重复 ...

  3. SQLSERVER 更改默认端口号

    最近这几天,服务器的数据库(SQLSERVER)老是遭受到攻击,有人不断地轮训想登陆数据库,从SQL的日志里可以看出来,一开始我是通过本地安全策略禁用了对应的几个攻击ip,同时把数据库的sa账号给禁用 ...

  4. EasyUI Layout Full - Not Correct in IE8

    EasyUI Full布局在IE10,IE9下正常,IE8无效果,标记一下有知道的可以留个言! 如图 IE 10 IE 8

  5. 【学习总结】UIGestureRecognizer(手势识别器)

    基本知识点 : -> IOS 3.2之后 , 苹果推出了手势识别功能 ( Gesture Recognizer ) 在触摸事件处理方面 , 简化开发难度. -> UIGesture Rec ...

  6. 元素属性和js数组

    arrObj.push(数组元素) --增加arrObj.splice(index,howmany)--删除  一般howmany为1,  index,开始截取掉的位置,arrObj[index].P ...

  7. python学习笔记18(UliPad 初体验)

    在windows下安装配置Ulipad 由于UliPad 是由wxPython 开发的,所以,需要先安装wxPython . wxPython下载地址: http://www.wxpython.org ...

  8. html 设置Select options值进行绑定

    <select id="cdms"> <option value="">请选择...</option> <option ...

  9. Delphi XE5 android openurl(转)

    直接上代码: unit OpenViewUrl; interface // URLEncode is performed on the URL// so you need to format it p ...

  10. 5.0:Spring-bean的加载

    内容来自<Spring深度解析>,之后的不一一复述! 在Spring中,最基本的IOC容器接口是BeanFactory - 这个接口为具体的IOC容器的实现作了最基本的功能规定 - 不管怎 ...