导航:首页 > 操作系统 > 安卓activity焦点是什么

安卓activity焦点是什么

发布时间:2023-05-29 03:19:38

㈠ 安卓中Activity的onStart()和onResume()的区别是什么

一、用户感受不同

1、onStart():是activity界面被显示出来的时候执行的,用户可见。

2、onResume():是当该activity与用户能进行交互时被执行,用户可以获得activity的焦点,能够与用户交互。

二、处理过程不同

1、onStart():是onStop()用户再切换回这个activity就会调用onRestart()而后调用onStart()。

2、onResume():是onPause()是当前的acitivty被暂停了,比如被另一个透明或者Dialog样式的Activity覆盖了,之后dialog取消,activity回到可交互状态,调用onResume()。


三、交互性不同

1、onStart():activity在上面,但没有将它完全覆盖,用户可以看到部分activity但不能与交互。

2、onResume():activity在下面,用户不能交互。


android中焦点具体指什么,还有可见不可见具体是什么意思

个人理解焦点就是处于最当前的状态,比如在windows桌面上,鼠标谈掘庆移动至某个程序图标,该图标会高亮显示,就是说该图标获含握得焦点散伍,安卓也是同理。
可见不可见相当于Windows中的文件隐藏

㈢ 安卓 View层 和 Activity层 消息传递机制和焦点问题

其实是activity派送出来的事件,不是无人知晓。而是这种问题不容易弄出一个关键字来搜索。

一个activity的touch事件先由activity的dispatchtouchevent来处理,负责派送。

dispatchtouchevent把ACTION_DOWN事件首先交给view,然后view返回false再传递回activity的onTouchEvent中处理。

具体的部分代码如下:

java">if(ev.getAction()==MotionEvent.ACTION_DOWN){
onUserInteraction();
}


如果用户需要这个ACTION_DOWN,应该在自身的onTouchEvent中对 ACTION_DOWN采取return true的响应,表示这个ACTION_DOWN归我了。只有在dispatchtouchevent为ACTION_DOWN事件找到一个归属,也即是target之后,后面的ACTION_MOVE和ACTION_UP才会对这个target传送。


如果你这个页面就仅仅有一个这样需要捕捉事件的view,你是可以直接在dispatchtouchevent中直接传送给这个view然后return true的。

㈣ android弹出dialog后,activity得到焦点的问题,activity能获得焦点,但是却不能获得里面的控件的点击事件

你是想跳出dialog的时候,dialog里面的控件就获取焦点呢还是,点击dialog里面的控件获取焦点.
点击是自动获取的焦点,你让给他设置相应的点击事件监听.

要是点dialog以后就想让dialog里面的控件获取焦点,则要是给自己手动设置.

㈤ activity(Android组件中最重要的四大组件之一)详细资料大全

activity是Android组件中最基本也是最为常见用的四大组件之一。Android四大组件有Activity,Service服务,Content Provider内容提供,BroadcastReceiver广播接收器。

基本介绍

概要说明,详细说明,基本状态,状态转换,方法通知,

概要说明

Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供者,备颂孙BroadcastReceiver广播接收器)之一。 Activity是一个应用程式组件,提供一个萤幕,用户可以用来互动为了完成某项任务。 Activity中所有操作都与用户密切相关,是一个负责与 用户互动 的组件,可以通过setContentView(View)来 显示指定控制项 。 在一个android套用中,一个Activity通常就是一个单独的萤幕,它上面可以显示一些控制项也可以监听并处理用户的事件做出回响。Activity之间通过Intent进行通信。

详细说明

基本状态

在android 中,Activity 拥有四种基本状态:
  1. Active/Running
一个新 Activity 启动入栈后,它显示在萤幕最前端,处理是处于栈的最顶端(Activity栈顶),此时它处于可见并可和用户互动的激活状态,叫做活动状态或者运行状态(active or running)。 2 . Paused 当 Activity失去焦点, 被一个新的非全萤幕的Activity 或者一个透明的Activity 被放置在栈顶,此时的状态叫做暂停状态(Paused)。此时它依然与视窗管理器保持连线,Activity依然保持活力(保持所有的状态,成员信息,和视窗管理器保持连线)樱空,但是在系统记忆体极端低下的时候将被强行终止掉。所以它仍然仿链可见,但已经失去了焦点故不可与用户进行互动。 3 . Sped 如果一个Activity被另外的Activity完全覆盖掉,叫做停止状态(Sped)。它依然保持所有状态和成员信息,但是它不再可见,所以它的视窗被隐藏,当系统记忆体需要被用在其他地方的时候,Sped的Activity将被强行终止掉。 4 . Killed 如果一个Activity是Paused或者Sped状态,系统可以将该Activity从记忆体中删除,Android系统采用两种方式进行删除,要么要求该Activity结束,要么直接终止它的进程。当该Activity再次显示给用户时,它必须重新开始和重置前面的状态。

状态转换

当一个 Activity 实例被创建、销毁或者启动另外一个 Activity 时,它在这四种状态之间进行转换,这种转换的发生依赖于用户程式的动作。下图说明了 Activity 在不同状态间转换的时机和条件: 图1. Activity 的状 态转换 如上所示,Android 程式设计师可以决定一个 Activity 的“生”,但不能决定它的“死”,也就是说程式设计师可以启动一个 Activity,但是却不能手动的“结束”一个 Activity。当你调用 Activity.finish() 方法时,结果和用户按下 BACK 键一样:告诉 Activity Manager 该 Activity 实例完成了相应的工作,可以被“回收”。随后 Activity Manager 激活处于栈第二层的 Activity 并重新入栈,同时原 Activity 被压入到栈的第二层,从 Active 状态转到 Paused 状态。例如:从 Activity1 中启动了 Activity2,则当前处于栈顶端的是 Activity2,第二层是 Activity1,当我们调用 Activity2.finish() 方法时,Activity Manager 重新激活 Activity1 并入栈,Activity2 从 Active 状态转换 Sed 状态, Activity1. onActivityResult(int requestCode, int resultCode, Intent data) 方法被执行,Activity2 返回的数据通过 data 参数返回给 Activity1。 Activity栈 Android 是通过一种 Activity 栈的方式来管理 Activity 的,一个 Activity 的实例的状态决定它在栈中的位置。处于前台的 Activity 总是在栈的顶端,当前台的 Activity 因为异常或其它原因被销毁时,处于栈第二层的 Activity 将被激活,上浮到栈顶。当新的 Activity 启动入栈时,原 Activity 会被压入到栈的第二层。一个 Activity 在栈中的位置变化反映了它在不同状态间的转换。Activity 的状态与它在栈中的位置关系如下图所示: 图2. Activity 的状 与它在 中的位置 如上所示,除了最顶层即处在 Active 状态的 Activity 外,其它的 Activity 都有可能在系统记忆体不足时被回收,一个 Activity 的实例越是处在栈的底层,它被系统回收的可能性越大。系统负责管理栈中 Activity 的实例,它根据 Activity 所处的状态来改变其在栈中的位置。

方法通知

下面的图显示了Activity的重要状态转换,矩形框表明Activity在状态转换之间的回调接口,开发人员可以重载实现以便执行相关代码,带有颜色的椭圆形表明Activity所处的状态。 3 . Activity 的状 转换的方法和实现 在上图中,Activity有三个关键的循环: 1. 整个的生命周期,从onCreate(Bundle)开始到onDestroy()结束。Activity在onCreate()设定所有的“全局”状态,在onDestory()释放所有的资源。例如:某个Activity有一个在后台运行的执行绪,用于从网路下载数据,则该Activity可以在onCreate()中创建执行绪,在onDestory()中停止执行绪。 2. 可见的生命周期,从onStart()开始到onS()结束。在这段时间,可以看到Activity在萤幕上,尽管有可能不在前台,不能和用户互动。在这两个接口之间,需要保持显示给用户的UI数据和资源等,例如:可以在onStart中注册一个IntentReceiver来监听数据变化导致UI的变动,当不再需要显示时候,可以在onS()中注销它。onStart(),onS()都可以被多次调用,因为Activity随时可以在可见和隐藏之间转换。 3. 前台的生命周期,从onResume()开始到onPause()结束。在这段时间里,该Activity处于所有 Activity的最前面,和用户进行互动。Activity可以经常性地在resumed和paused状态之间切换,例如:当设备准备休眠时,当一个 Activity处理结果被分发时,当一个新的Intent被分发时。所以在这些接口方法中的代码应该属于非常轻量级的。

㈥ android中 怎么使新加载的activity获得焦点~

android中,如果在业务代码层实现控件获得焦点,需要先调用setFocus(),再调用requestFocus()。
如果直接使用layout布局使其中的控件某人获取焦点,只需要在控件中添加一个<requestFocus />标签。

以EditText为例:
<EditText id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
android:paddingBottom="4">
<requestFocus />
</EditText>
这样在打开这个Activity时,EditText会自动获取焦点。

㈦ Android中 所谓焦点是什么谁能帮忙解释一下吗!

焦点大概就是你当前要操作的地方.
例如,你有三行输入框,
焦点在第一行输入框时,你打字就会输入进第1个输入框,
焦点在哪个上,字就会输入到哪里.

阅读全文

与安卓activity焦点是什么相关的资料

热点内容
编程第四关用冰雪火焰闪现通关 浏览:752
批处理当前文件夹参数 浏览:183
鸿蒙安卓如何下载 浏览:902
开3389命令 浏览:540
程序员大都单纯吗 浏览:913
APP如何实现下载功能 浏览:214
通达信源码怎样放到桌面 浏览:643
程序员的脑袋会秃吗 浏览:453
为什么eve登录启动不进去服务器 浏览:270
微信招生app哪个好用 浏览:233
宝可梦剑盾启动文件在哪个文件夹 浏览:765
压缩机比容 浏览:117
python自动化测试面试 浏览:949
买便宜点的鞋子去哪个app买 浏览:890
android中个人页面 浏览:711
程序员那么可爱逸城前女友 浏览:577
我的世界如何获得服务器服主 浏览:19
相册本地加密 浏览:228
压缩文件夹共享 浏览:754
梁一端箍筋加密长度设置 浏览:447