scroll中放入listview,并解决scroll初始化不置顶问题

首先,scroll中放入listview的话,listview是显示不全的,这时候需要动态修改listview的长度

	public void setListViewHeight(ListView listView) {
        // 获取ListView对应的Adapter
        ListAdapter listAdapter = listView.getAdapter();   

        if (listAdapter == null) {
            return;
        }
        int totalHeight = 0;
        for (int i = 0, len = listAdapter.getCount(); i < len; i++) { // listAdapter.getCount()返回数据项的数目
            View listItem = listAdapter.getView(i, null, listView);
            listItem.measure(0, 0); // 计算子项View 的宽高
            totalHeight += listItem.getMeasuredHeight(); // 统计所有子项的总高度
        }
        ViewGroup.LayoutParams params = listView.getLayoutParams();
        params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
        listView.setLayoutParams(params);
    }  

成功后发现scroll不置顶,这时候只要

myscroll.smoothScrollTo(0,20);

就OK了

时间: 2024-08-29 17:18:20

scroll中放入listview,并解决scroll初始化不置顶问题的相关文章

c#中如何在一个panel中放入窗体

? 1 2 3 4 5 6 7 Form2 f2 = new Form2();       //实例化窗体FORM2              f2.TopLevel = false;    //设置为非顶级窗体              f2.FormBorderStyle = FormBorderStyle.None;            //设置窗体为非边框样式              f2.Dock = System.Windows.Forms.DockStyle.Fill;   /

springmvc 中model中放入枚举类型

我们直接看例子: Map<String, String> mallMap = new HashMap<String, String>(); mallMap.put(MallStatus.SELFMALL.toString(), MallStatus.SELFMALL.getValue()); mallMap.put(MallStatus.DELEGATIONMALL.toString(), MallStatus.DELEGATIONMALL.getValue()); mallMap

变量声明置顶规则、函数声明及函数表达式和函数的arguments属性初始化

一.变量声明和变量赋值: if (!("a" in window)) { var a = 1; } alert(a);//a为? 你可能认为alert出来的结果是1,然后实际结果是"undefined".要了解为什么,我们需要知道JavaScript里的3个概念: 1.所有的全局变量都是window的属性,语句 var a = 1;等价于window.a = 1; 可以用如下方式来检测全局变量是否声明: "变量名称" in window 2.声明

解决点击锚点置顶内容被导航遮住

工作中我第一次遇到这种情况,因为是接手公司的老项目,在原来项目的基础上修改,而且这项目里的相应文件都非常乱,结构.样式.行为都不分离的,处理起来有点棘手,看着代码脑袋都疼:由于点击锚点,内容会默认置顶,被导航栏遮住.一开始我都在网上找解决的方案,但是后来,我还是选择了一个比较笨的办法,就是将锚点所在的元素独立出来如下: <a name="anchor" style="display:block;height:44px;margin-top:-44px;">

【数据结构】用C++编写栈及基本操作(包括入栈,出栈,获得栈顶,摧毁,清空等等)

//[数据结构]用C++编写栈及基本操作(包括入栈,出栈,获得栈顶,摧毁,清空等等) //头文件 #ifndef _SEQ_STACK_ #define _SEQ_STACK_ #include <iostream> using namespace std; template <class Type> class SeqStack { public: SeqStack(size_t sz=INIT_SIZE) { capacity = sz > INIT_SIZE ? sz

Popup 解决StayOpen=true时,置顶的问题

/// <summary> /// 解决StayOpen=true时,永远置顶问题的Popup控件 /// </summary> public class EasiNotePopup : Popup { public static readonly DependencyProperty IsTopmostProperty = DependencyProperty.Register("IsTopmost", typeof(bool), typeof(EasiNot

第二章 控件架构与自定义控件详解 + ListView使用技巧 + Scroll分析

1.Android控件架构下图是UI界面架构图,每个Activity都有一个Window对象,通常是由PhoneWindow类来实现的.PhoneWindow将DecorView作为整个应用窗口的根View,DecorView将屏幕分成两部分:TitleView和ContentView.ContentView实际上是一个FrameLayout,里面容纳的就是我们在xml布局文件中定义的布局. 为什么调用requestWindowFeature()方法一定要在setContentView()方法调

Android listview viewpager解决冲突 滑动

Android listview viewpager 滑动 跳动 冲突解决 ListView中嵌套ViewPage有或者滑动手势冲突解决 在listview 上使用 addHeaderView 在第一栏添加 viewpager 当做header 如: 当触发 滑动事件 的时候容易引起 滑动冲突    (比如斜着滑动viewpager  的时候 listview会跳动) 特别是在  下拉刷新或者上拉加载 的时候 , 组件可能会传递到viewpager当中 查阅了很多的帖子  发现修改起来都非常麻烦

ubuntu登入死循环问题 解决!!

把/etc/environment文件中的 PATH="/usr/local//sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/usr/games" 删了的加上,没删就过 清除掉 /etc/profile的java的路径配置 我发现问题所在了 系统启动先调用profile中的环境,后调用environment中的环境.在profile中设了和environment同名的环境 时,profile要继承environment环境,不然会引起environm