zoukankan      html  css  js  c++  java
  • Android 4.0中对话框项目文字无法用setText变更问题

    今天在手机适配中发现漫画播放器的菜单中点击“自动播放”后,文字无法发生改变。后来发现,在点击“自动播放”,菜单消失的瞬间,菜单项文字确实发生了变化,只是再次打开菜单时菜单项文字又变回了“手动播放”,表明setText方法确实被调用并且生效了。Android 2.x的手机上运行不会发生该问题。

    初步判断是作为菜单的GridView被重新生成了。但是通过log打印发现情况并非如此。

    最后怀疑GridView所使用的SimpleAdapter中的getView被调用,引起菜单项文字被重新初始化。将SimpleAdapter置换成匿名内部类,在getView方法中打印log。发现菜单重新弹出时GridView虽然没有重新生成,但是SimpleAdapter的getView方法确实被重新调用了,引起菜单项重置。这样的话,就在getView中根据播放器的播放状态修改“自动播放”菜单项的文字就可以了。

    至此,问题解决。

    顺便一提。2.x的系统中菜单重新显示时菜单项没有重新生成。推测可能是4.0系统中在GridView不显示时自动回收了里面的子view,而不是等待GridView被销毁时才回收。

  • 相关阅读:
    [SQL Server]如何激活一个账号
    sqlcmd命令详解
    SQL Server Express 2008 安装程序
    SharePoint中的本地化(Localization)
    2009十大企业应用产品
    2010年10大战略技术
    十个理由促使小企业敢于触碰“云计算”
    如何改进网站性能
    sqlcmd详细示例
    VMware网络配置详解
  • 原文地址:https://www.cnblogs.com/airshow/p/2535527.html
Copyright © 2011-2022 走看看