当前位置:编程学习 > wap >>

关于android界面的困惑

刚接触Activity时,通常都说可以这样理解:一个界面就是一个activity
但做了一段时间,突然觉得不解了,因为感觉好像有些界面并不依赖于activity?

在任何一个界面比如短消息,按下电源键,屏幕暗下来,在按一下电源键屏幕点亮,这时
进入锁屏界面,在这个过程中并没看到ActivityManager的log 有start任何activity,那这个
LockScreen界面是属于哪个activity??
看了LockScreen.java,KeyguardViewMediator.java,LockPatternView.java。。。也没一个是ACtivity
的。
类似的界面还有,比如任何界面下按下音量键,弹出的音量调节窗口,这个窗口是在属于哪个activity呢?

是否Android对窗口的管理activity只是一个方面 --------------------编程问答-------------------- activity 中可以有很多view可以用系统的 也可以自定义   但是view必需基于 activity 。  --------------------编程问答-------------------- 首先activity是件一个活动,像你说的那样弹出一个窗口可以属于一个活动。像我们在VS下做c#编程一样,用一个MessageBox就可以了。通常情况下一个activity就是一个小apk,但是在复杂的软件里,可以有多少activity,它们之间用intent来调用切换。上面你说的弹出一个窗口,在log中并没有看到start之类的消息。那么你可以去了解activity的生命周期,android手机秉承最大占用的原则,也就是一个apk开启,如果用户不强制关掉它,android会不关闭它的,只有在内存不足的情况下,android会将栈中的已经很久没有响应用户apk关掉。所以在log中不会有start这个log.再所以关锁啊之类的,也不会start的log出现。 --------------------编程问答-------------------- 不一定每个界面都是Activity.有的也可能是继承View;你只需一个Activity.但你有多个View的话,可以通过setContentView(View).来设置不同的界面显示! --------------------编程问答-------------------- Activity 与 控件的关系
Activity —— 控件的容器

LockScreen、LockPatternView是两个View,并不是Acitivity

按电源键待机时,就会调用LockScreen的onShow方法,该方法会重新绘制Keyguard待机界面,LCD有个buffer会保存当前的画面,当点亮屏幕时,待机界面就呈现。。。

按音量键弹出的那个窗口是Activity的特色式样,它设置了android:theme 属性 为 Theme.Dialog --------------------编程问答--------------------
引用 4 楼 wenzheng38 的回复:
Activity 与 控件的关系
Activity —— 控件的容器

LockScreen、LockPatternView是两个View,并不是Acitivity

按电源键待机时,就会调用LockScreen的onShow方法,该方法会重新绘制Keyguard待机界面,LCD有个buffer会保存当前的画面,当点亮屏幕时,待机界面就呈现。。。

按音量键弹出的那个窗口是Activ……

谢谢回答。
那就是说,某些窗口可以不依赖于activity,仅仅继承view也可以show出一个画面? --------------------编程问答-------------------- 显示出来的必须是activity,就算是dialog也是activity的原理,就和网络上一样,无论怎么显示都是html,什么php,jsp,asp原理都是html --------------------编程问答-------------------- 我们看到的不仅仅有activity,还有view和dialog。
一个activity里面可以放置不同的view --------------------编程问答-------------------- --------------------编程问答--------------------
引用 4 楼 wenzheng38 的回复:
Activity 与 控件的关系
Activity —— 控件的容器

LockScreen、LockPatternView是两个View,并不是Acitivity

按电源键待机时,就会调用LockScreen的onShow方法,该方法会重新绘制Keyguard待机界面,LCD有个buffer会保存当前的画面,当点亮屏幕时,待机界面就呈现。。。

按音量键弹出的那个窗口是Activ……
---有道理
--------------------编程问答-------------------- --------------------编程问答-------------------- 楼上说的对,一个Activity里面可以加载很多view,当然加载新的view的时候,以前的view就看不到了。 --------------------编程问答-------------------- --------------------编程问答-------------------- LockScreen只是一个View而已 --------------------编程问答--------------------
引用 2 楼 hilda_chen 的回复:
首先activity是件一个活动,像你说的那样弹出一个窗口可以属于一个活动。像我们在VS下做c#编程一样,用一个MessageBox就可以了。通常情况下一个activity就是一个小apk,但是在复杂的软件里,可以有多少activity,它们之间用intent来调用切换。上面你说的弹出一个窗口,在log中并没有看到start之类的消息。那么你可以去了解activity的生命周期,android手……
--------------------编程问答--------------------
引用 2 楼 hilda_chen 的回复:
首先activity是件一个活动,像你说的那样弹出一个窗口可以属于一个活动。像我们在VS下做c#编程一样,用一个MessageBox就可以了。通常情况下一个activity就是一个小apk,但是在复杂的软件里,可以有多少activity,它们之间用intent来调用切换。上面你说的弹出一个窗口,在log中并没有看到start之类的消息。那么你可以去了解activity的生命周期,android手……

学习了。! --------------------编程问答--------------------
引用 6 楼 lieri111 的回复:
显示出来的必须是activity,就算是dialog也是activity的原理,就和网络上一样,无论怎么显示都是html,什么php,jsp,asp原理都是html

顶!
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,