貌似下拉框弹出选项后,原Activity就成为后台了。还有对话框,原来也是一个新的Activity。

解决方案 »

  1.   

    我觉得它跟Toast的机制差不多,应该不是一个Activity~~~~
      

  2.   

    不是吧!对话框就是对话框,怎么可能是Activity.
      

  3.   

    一个显示控件  view 
      

  4.   

    问题是弹出对话框或者选单的时候(菜单还没试),某些原Activity的消息就接收不到了,比如Home键按下。
      

  5.   

    这样理解是不对的,弹出对话框或者Toast之类的,位于栈顶的Activity还是原来的那个,而不会放到后台里。不行楼主可以在Activity里实现onPause()方法,里面加一条打印语句。你会发现弹出对话框或者Toast的时候没有打印,所以Activity就没有在后台了。Activity生命周期灰常重要,楼主可要认真学习SDK了……
      

  6.   

    那倒是,我就是比较奇怪这个现象,如你所说,Activity没有被切换的话,有什么理由屏蔽一个由Activity接收的消息呢?Android的架构啊,我又要诟病它了。当对话框,菜单,以及其他弹出窗口打开的时候,我哪里去截获这个Home键按下消息呢?实际上它被送给系统了。
      

  7.   

    AlertDialog对象也有onkeydown事件,监听这个试试
      

  8.   

    看了一下SDK,Dialog即使不是个Activity,但是也是个轻型Activity,基本上Activity的动作它全有,键盘也全面接管。
      

  9.   

    Windows平台一般来说,屏蔽系统键是一个特殊的操作,它的思路是在窗口接收之前就截获,一劳永逸,Android平台不知道有没有这样的方法。Home键应该算系统键,包括菜单键,回退键等等物理键和普通的输入键盘应该明确的区分开,Android把他们混到一起处理完全没有必要。