ListView能不能横向滚动解决办法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListView能不能横向滚动解决办法相关的知识,希望对你有一定的参考价值。

参考技术A ListView 能不能横向滚动 我做了一个列表 设置成单行显示 我想让文字超出屏幕宽度的时候可以对整个 list 进行横向滚动 但是在listview 外面加横向滚动条horizontalscrollview 出不了效果 大家有类似经验的指点一下 ------解决方案-------------------------------------------------------- 自绘一个listview,你看下listview 的代码,重新计算下宽度, ------解决方案-------------------------------------------------------- 路过,看到,学习,与君共勉!!! ------解决方案-------------------------------------------------------- 我记得有一个属性是可以设置成LZ 这样的效果的。 额, 具体记不了咯 。......... 关注一下。 ------解决方案-------------------------------------------------------- ListView 既然是当行显示,也就是只有一行了,是这个意思么? 如果是这个意思,那你自己写一个 Adapter,在 ListView Item 那个 xml 文件中就用 HorizontalScrollview 嵌套 TextView ,然后在 getView()中用这个xml 文件就好了 不过这个问题是,如果你多行的话,不能实现他们整体的左右移动,只能实现单行的 ------解决方案-------------------------------------------------------- 整个滑动也是可以的,你只要在你的ListView 外面嵌套HorizontalScrollview ,注意不能嵌套Scrollview。要不必须UI 异常,这个是可以的,我试过了 ------解决方案-------------------------------------------------------- 引用: 整个滑动也是可以的,你只要在你的 ListView 外面嵌套 HorizontalScrollview ,注意不能嵌套Scrollview。

解决Ext 4.0.7 tree.Panel横向不出滚动条,纵向滚动条失效的问题

/**
 * 重写Ext.tree.Panel afterlayout方法,解决横向不出滚动条,纵向滚动条失效的问题
 * 1.显示grid的css滚动条,对于树表横向滚动条没有办法使标题一块儿滚动,所以隐藏掉(在树表上定义属性treeGrid:\'Y\');
 * 2.将grid的css纵向滚动条定位到最右侧;
 * 3.获取到ext自动添加的自己写纵向的滚动条,将它remove掉;
 * 4.将remove掉改成设置宽度为0隐藏掉。
 * 遗留问题:
 *         remove掉会造成grid页面数据新增时,无法定位新增行。
 *         宽度设置为0会造成:鼠标滚轮可能会失效,需要鼠标左键拖动滚动条滚动。
 */
Ext.tree.Panel.override({
    listeners:{
        afterlayout : function(treePanel, eOpts){
            var emBody = document.getElementById(treePanel.body.id);
            var emView = document.getElementById(treePanel.getView().id);
            var emTable = document.getElementById(treePanel.getView().id).childNodes[0];
            if(emTable != undefined){
                var emTableW = emTable.style.width;
                var newEmTableW = parseInt(emTable.style.width.substr(0,emTableW.length-2))-20;
                emTable.style.width = newEmTableW+"px";
                emTable.style.tableLayout = \'auto\';
                emTable.style.borderCollapse = \'separate\';
            }
            emView.style.overflow = \'visible\';
            if(treePanel.treeGrid != \'Y\'){
                emView.style.overflowX = \'auto\';
            }else{
                emView.style.overflowX = \'hidden\';
            }
            emView.style.overflowY = \'auto\';
            emView.style.position = \'relative\';
            var emDivArr = emBody.parentNode.getElementsByTagName("div");
               for(var i = 0; i < emDivArr.length; i++){
                   var emDiv = emDivArr[i];
                   if(emDiv.id.indexOf("gridscroller") == 0 && emDiv.className.indexOf("x-scroller-vertical") > 0){
                       /*if(emDiv.parentNode != null){
                           emDiv.parentNode.removeChild(emDiv);
                       }*/
                       emDiv.style.width = "0px";
                       emView.style.width = treePanel.getWidth()+"px";
                       emBody.style.width = treePanel.getWidth()+"px";
                   }
               }
         }
    }
});
  1. 在jsp中或在通用的js文件中加入下面的重写Ext.tree.Panel afterlayout的方法;
  2. 仅在ext4.0.7中简单测试过,其他版本请自行测试。
  3. 若在使用过程中发现会引起其他bug,请在原文出处回复讨论,谢谢。
作者:java小秦
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

以上是关于ListView能不能横向滚动解决办法的主要内容,如果未能解决你的问题,请参考以下文章

ScrollView中嵌套GridView,ListView只显示一行的解决办法

Android自定义ListView的Item无法响应OnItemClick的解决办法

解决RecyclerView&ListView滚动到顶部或者底部边界出现阴影问题

C#使用ListView更新数据出现闪烁解决办法

Cookie能不能存储对象啊解决办法

在 iPhone 中,键盘以纵向模式出现,而不是横向模式。有啥解决办法吗?