当前位置:  编程技术>移动开发
本页文章导读:
    ▪ListView Item 选择有关问题解决之道        ListView Item 选择问题解决之道         在Android应用开发中,很多时候都会遇到这样的需求,一个listView,含有N项,当点击某项时,该项展开,显示该项中隐藏的某些控件,再点击,该项收回.........
    ▪ qt4 tcp/ip协议四个层次        qt4 tcp/ip协议4个层次tcp/ip协议的4个层次:  TCP/IP协议被组织成四个概念层,其中有三层对应于ISO参考模型中的相应层。ICP/IP协议族并不包含物理层和数据链路层,因此它不能独立完成整个.........
    ▪ CPU对策学习:interactive策略的优点和缺点       CPU策略学习:interactive策略的优点和缺点CPU策略学习:interactive策略的优点和缺点 我相信,研究CPU策略的人,经常会听别人说,或者自己说:每种策略都有好有不足,性能和功耗不能兼顾,.........

[1]ListView Item 选择有关问题解决之道
    来源: 互联网  发布时间: 2014-02-18
ListView Item 选择问题解决之道

         在Android应用开发中,很多时候都会遇到这样的需求,一个listView,含有N项,当点击某项时,该项展开,显示该项中隐藏的某些控件,再点击,该项收回,重新隐藏部分控件,当一项打开状态,点击另一项,另一项展开,该项关闭。(说的有点绕,看下图) 

        在去年的时候,自己的一篇文章(http://blog.csdn.net/aomandeshangxiao/article/details/6643831),里面有Item的选择问题,用的方法比较笨,要遍历一遍,把所有的item全部都设置一下,应该是很浪费资源的。还有一个问题就是,当listview的item多于一个屏幕的时候,会出现重复选择问题,就是当你选中一项滑动的时候,可能会发现滑动后出现的某项也是在选中状态,这个问题令人十分抓狂。见网上有个方法是:在adapter的getView里面不使用convertview。每一个view都是重新创建一个。能够解决问题,但是还是有点浪费资源。

        

        先看下效果图:第二项被选中


第四项被选中:



        这个方法也是在他人的帮助下,努力得来,分享一下!


这里应该注意到与平常的不同,onItemClick方法里面调用了自定义ListAdapter里面的自定义changeImageViewVisable方法。

看ListAdapter:


       代码的最下端是changeImageVisable方法。(注意:在这个方法中,博客代码版本和提供下载代码版本中有细微差异,博客代码较下载代码性能更优,这也体现了Holder类的优越性,一定要好好用好Holder,应好好思考下,为什么这样写性能就更好些呢?欢迎留言讨论)。

        布局文件:

main.xml:


list_item.xml:


      布局只是简单的写了下,弄了两张欧洲杯的图。

      最后代码下载地址:http://download.csdn.net/detail/aomandeshangxiao/4384922

        如果是有所帮助,在下面微微顶一个吧。


     


    
[2] qt4 tcp/ip协议四个层次
    来源: 互联网  发布时间: 2014-02-18
qt4 tcp/ip协议4个层次
tcp/ip协议的4个层次:


 TCP/IP协议被组织成四个概念层,其中有三层对应于ISO参考模型中的相应层。ICP/IP协议族并不包含物理层和数据链路层,因此它不能独立完成整个计算机网络系统的功能,必须与许多其他的协议协同工作。

  TCP/IP分层模型的四个协议层分别完成以下的功能:

  第一层 网络接口层

  网络接口层包括用于协作IP数据在已有网络介质上传输的协议。实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。相反,它定义像地址解析协议(Address Resolution Protocol,ARP)这样的协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。
所以tcp/ip协议与iso协议的对照关系是

refer to  
http://www.cisco.com/en/US/docs/internetworking/troubleshooting/guide/tr1907.html


  第二层 网间层

  网间层对应于OSI七层参考模型的网络层。本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。

  第三层 传输层

  传输层对应于OSI七层参考模型的传输层,它提供两种端到端的通信服务。其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。

  第四层 应用层

  应用层对应于OSI七层参考模型的应用层和表达层。因特网的应用层协议包括Finger、Whois、FTP(文件传输协议)、Gopher、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等。

    
[3] CPU对策学习:interactive策略的优点和缺点
    来源: 互联网  发布时间: 2014-02-18
CPU策略学习:interactive策略的优点和缺点
CPU策略学习:interactive策略的优点和缺点


我相信,研究CPU策略的人,经常会听别人说,或者自己说:每种策略都有好有不足,性能和功耗不能兼顾,性能好的功耗就大,为省功耗就会牺牲性能。

真是这样吗?

即使是真的,为什么这么说呢??


下面我们从interactive策略,学习过程中,发现该策略的优点和不足之处,想想改进的方法,然后来琢磨这些老生常谈


主要特点:

升频幅度:大

升频速度:快

升频准度:一般

降频幅度:大

降频速度:一般

降频准度:一般


准度,是指在一次调频后,能否维持该频率在一段时间内是最适合系统当前负载

准度好,表示经过一次调频,系统在某个频率点运行一定时间,调频次数少

准度差,表示经过一次调频,系统会很快再次调频,调频次数多


至于对上诉特点的解释,前篇博文有结合实际代码分析,参看CPU 策略学习:interactive分析,结合代码

除了上面的特点,该策略还有一个特别突出的问题

由于这个策略是基于一个定时器,不断地计算系统在一个timer期间的负载情况,得出负载值后,根据一些算法,判定是否调频,如何调频

所以,这个timer的周期大小就很关键,一个周期内的平均值能否真实地反应出系统的频率需求,而且,该算法是根据当前时刻之前的一个timer周期的结果,来决定下一个周期系统的频率,也就是说,用之前的需求,猜测下一周期的需求;可以想象的到,对于系统而言,这两个周期的需求可能完全不同,这样的算法就会显得“自作聪明”,“自作多情”;而且在对系统由低负载到高负载的一小段时间(一个timer周期大小) 内,系统会以低频跑高负载任务。

典型的场景有:

input (touch keypad)

music play

local vedio play

这些场景一般不用系统跑高频,只需要中低频率即可,但是不能够迅速响应系统的需求


对于input的场景,android开发代码有进行考虑,这里也分析下

input系统的注册,会注册“device” 和“handlers”,在bus目录下,input系统为支持一个中断多个服务接口,用一个链表来支持handler的存储,在需要input响应时,触发的设备,只需要调用input提供的注册接口,就可以在handlers下面添加一个句柄。



在handler方法集中,event方法用于响应具体事件的到来,connect用于把句柄和input系统连接


这里的判断条件有两个方面:

1.input_boost_val是给用户接口的全局变量,可以通过设备节点随时开关

2.type == EV_SYN && code == SYN_REPORT标志的是input_sync的动作,包括press和release两个动作的sync

满足这两个条件,就会进入cpufreq_interactive_boost


cpufreq_interactive_boost:顾名思义,就是interactive对突发任务的处理。突发的任务就是系统在没有任务情况下,突然短时间有很高的需求,而且可能这个需求很短暂,需要系统随时响应,等不了timer判断好了后决定。场景有input music local vedio


这个策略总体来讲,还不错,调频降频比较大胆冒进,在性能上有优越性,但是在频率切换上有很多需要完善的









    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3