sencha touch 2 tabpanel中List的不显示问题,解决方案
笔者在做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的不显示问题,解决方案的更多相关文章
- sencha touch 模仿tabpanel导航栏TabBar的实现代码
这篇文章介绍了sencha touch 模仿tabpanel导航栏TabBar的实例代码,有需要的朋友可以参考一下 基于sencha touch 2.2所写 效果图: 代码: /* *模仿tabpan ...
- sencha touch 在安卓中横屏、竖屏切换 应用崩溃问题
答案来至于 Sencha Touch 交流 @周旭 这是由于横竖屏转换导致activity重跑onCreate方法导致的,有两种解决方案:1.横竖屏转换的时候不要重新跑onCreate方法,这个可以在 ...
- sencha touch 模仿tabpanel导航栏TabBar(2013-11-7)
基于sencha touch 2.2所写 代码: /* *模仿tabpanel导航栏 */ Ext.define('ux.TabBar', { alternateClassName: 'tabBar' ...
- sencha touch 坑爹的Panel,数据不显示了...
一位同学问我一个问题: sencha touch中xtype创建dataview死活不显示!!版本2.3.1,MVC模式,sencha touch创建目录程序很简单,主界面一个tabPanel,两个分 ...
- sencha touch 2.3.1 list emptyText不显示
如图所示,有时候没有取到任何的数据. 那么我们就需要显示没有获取到内容这一类提示,显示内容通常通过emptyText这个属性来配置. 但是在sencha touch 2.3.1之中有可能会出问题,所以 ...
- sencha touch 在视图中显示一个html页面
Ext.define('app.view.about.About', { alternateClassName: 'about', extend: 'Ext.Container', xtype: 'a ...
- Tomcat 中 jsp 中文乱码显示处理解决方案
原地址: http://blog.csdn.net/joyous/article/details/1504274 初学JSP,尤其是Tomcat环境(GlassFish默认UTF-8,则不存在此类问题 ...
- android 布局文件 ScrollView 中的 listView item 显示不全解决方案
import android.content.Context;import android.util.AttributeSet;import android.widget.ListView; /** ...
- html5外包—长年承接html5外包业务:《Sencha Touch权威指南》下载
<Sencha Touch权威指南>内容简介:如何才能全面而透彻地理解和掌握移动应用开发框架Sencha Touch并开发出令人心动的移动应用?<Sencha Touch权威指南&g ...
随机推荐
- [旧博客]QQ旋风加速漏洞
漏洞是这样的,用开通QQ会员的账号登录QQ旋风,添加要下载的任务,启动加速后,注销,登录lixian.qq.com 删除刚才添加的离线任务,这时QQ旋风还是在加速那个任务.而你又可以登录QQ旋风添加其 ...
- C# 类中隐藏基类方法和Partial
今天对于.NET开发人员来说最开心的事情莫过于微软搞开源了,这觉得是给搞.NET开发的长脸.虽然我是一个初学者,这无疑给我极大的学习动力.Fighting!!! 当一个类从父类继承了一个成员时,也就继 ...
- 【BZOJ 3172】 [Tjoi2013]单词
Description 某人读论文,一篇论文是由许多单词组成.但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次. Input 第一个一个整数N,表示有多少个单词,接下来N ...
- C# Windows - TabControl
TabControl控件的属性 - 一般用于控制TabPages对象容器的外观,特别是显示的选项卡的外观 属性 说明 Alignment 控制选项卡在选项卡控件的什么位置显示 Appearance 控 ...
- JQuery 知识点
1:animate 动画效果 $(function () { $(".sidebar-nav a").mouseover(function () { $(this).animate ...
- JavaScript里最有效率的功能特征检测方法
代码执行效率对于程序员和程序来说都是至关重要的,尤其是遇到了那些需要大量调用.反复调用的函数方法.在很多Javascript框架里你都能看到有反复调用的函数.当在使用这些框架时,我们必须小心翼翼的尽量 ...
- js和HTML结合(补充知识:如何防止文件缓存的js代码)
来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(二) 使用html标签<script>可以把js嵌入到html页面中,让脚本 ...
- [转载]Unity3D的断点调试功能
断点调试功能可谓是程序员必备的功能了.Unity3D支持编写js和c#脚本,但很多人可能不知道,其实Unity3D也能对程序进行断点调试的.不过这个断点调试功能只限于使用Unity3D自带的MonoD ...
- maven 解决 Eclipse is running in a JRE, but a JDK is
解决安装了maven插件的myeclipse每次开启报错 The Maven Integration requires that Eclipse be running in a JDK, becaus ...
- <Learning How to Learn>Week One: Focused versus Diffuse Thinking
1-1 Introduction to the focused and diffuse modes (4:40) 两种思考的模式:focused mode以及diffuse mode focused ...