Most visited

Recently visited

Added in API level 1

Activity

public class Activity
extends ContextThemeWrapper implements LayoutInflater.Factory2, Window.Callback, KeyEvent.Callback, View.OnCreateContextMenuListener, ComponentCallbacks2

java.lang.Object
   ↳ android.content.Context
     ↳ android.content.ContextWrapper
       ↳ android.view.ContextThemeWrapper
         ↳ android.app.Activity
Known Direct Subclasses
Known Indirect Subclasses


一项活动是用户可以做的一件重点事项。 几乎所有活动都与用户交互,所以Activity类负责为您创建一个窗口,您可以在其中使用setContentView(View)放置您的UI。 虽然活动通常以全屏窗口的形式呈现给用户,但它们也可以以其他方式使用:作为浮动窗口(通过设置为windowIsFloating的主题)或嵌入另一活动(使用ActivityGroup )。 几乎所有Activity的子类都有两种方法可以实现:

要与 Context.startActivity()一起使用,所有活动类必须在其包 AndroidManifest.xml具有相应的 <activity>声明。

涵盖的主题包括:

  1. Fragments
  2. Activity Lifecycle
  3. Configuration Changes
  4. Starting Activities and Getting Results
  5. Saving Persistent State
  6. Permissions
  7. Process Lifecycle

Developer Guides

Activity类是应用程序整个生命周期的重要组成部分,活动的启动和组合是平台应用程序模型的基本组成部分。 要详细了解Android应用程序的结构以及活动的行为方式,请阅读Application FundamentalsTasks and Back Stack开发人员指南。

您还可以在 Activities开发人员指南中找到有关如何创建活动的详细讨论。

Fragments

HONEYCOMB开始,Activity实现可以利用Fragment类来更好地模块化代码,为更大的屏幕构建更复杂的用户界面,并帮助在小屏幕和大屏幕之间扩展应用程序。

Activity Lifecycle

系统中的活动作为活动堆栈进行管理。 当一个新的活动开始时,它被放置在堆栈顶部并成为正在运行的活动 - 前一个活动始终保持在堆栈下方,并且在新活动退出之前不会再次到达前台。

一项活动基本上有四种状态:

下图显示了一个Activity的重要状态路径。 矩形矩形表示您可以实现的回调方法,以便在活动在状态之间移动时执行操作。 彩色的椭圆形是活动可以进入的主要状态。

您可能有兴趣在自己的活动中监控三个关键循环:

活动的整个生命周期由以下Activity方法定义。 所有这些都是钩子,当活动更改状态时,您可以重写以执行适当的工作。 所有活动将执行onCreate(Bundle)进行初始设置; 许多人也将实施onPause()来承诺更改数据,并准备停止与用户交互。 实施这些方法时,您应该始终致电您的超类。

 public class Activity extends ApplicationContext {
     protected void onCreate(Bundle savedInstanceState);

     protected void onStart();

     protected void onRestart();

     protected void onResume();

     protected void onPause();

     protected void onStop();

     protected void onDestroy();
 }
 

一般来说,通过一个活动的生命周期的运动看起来像这样:

方法 描述 Killable? Next
onCreate() Called when the activity is first created. This is where you should do all of your normal static set up: create views, bind data to lists, etc. This method also provides you with a Bundle containing the activity's previously frozen state, if there was one.

总是跟着 onStart()

No onStart()
     onRestart() Called after your activity has been stopped, prior to it being started again.

总是跟着 onStart()

No onStart()
onStart() Called when the activity is becoming visible to the user.

其次是 onResume()如果活动来到前台,或者 onStop()如果它被隐藏。

No onResume() or onStop()
     onResume() Called when the activity will start interacting with the user. At this point your activity is at the top of the activity stack, with user input going to it.

总是跟着 onPause()

No onPause()
onPause() Called when the system is about to start resuming a previous activity. This is typically used to commit unsaved changes to persistent data, stop animations and other things that may be consuming CPU, etc. Implementations of this method must be very quick because the next activity will not be resumed until this method returns.

接着为无论是 onResume()如果活动返回到前面或 onStop()如果它变得对用户不可见。

Pre-HONEYCOMB onResume() or
onStop()
onStop() Called when the activity is no longer visible to the user, because another activity has been resumed and is covering this one. This may happen either because a new activity is being started, an existing one is being brought in front of this one, or this one is being destroyed.

其次无论是 onRestart()如果此活动回来与用户,或以互动 onDestroy()如果此活动消失。

Yes onRestart() or
onDestroy()
onDestroy() The final call you receive before your activity is destroyed. This can happen either because the activity is finishing (someone called finish() on it, or because the system is temporarily destroying this instance of the activity to save space. You can distinguish between these two scenarios with the isFinishing() method. Yes nothing

请注意上表中的“Killable”列 - 对于那些被标记为killable的方法,在该方法返回后,托管该活动的进程可能会被系统随时终止,而无需执行其他代码行。 因此,您应该使用onPause()方法将任何持久性数据(例如用户编辑)写入存储。 另外,在将活动置于这种背景状态之前调用方法onSaveInstanceState(Bundle) ,从而允许您将活动中的任何动态实例状态保存到给定的Bundle中,以便稍后在onCreate(Bundle)收到,如果活动需要重新创建。 请参阅Process Lifecycle一节以获取有关进程的生命周期如何与其托管的活动关联的更多信息。 请注意,将持久性数据保存在onPause()而不是onSaveInstanceState(Bundle)非常重要,因为后者不是生命周期回调的一部分,所以在其文档中描述的每种情况下都不会调用它。

请注意,这些语义将在以HONEYCOMB开头的针对平台的应用程序与针对以前平台的应用程序之间略有变化。 从Honeycomb开始,应用程序在onStop()返回之前不处于可Killable状态。 这会影响onSaveInstanceState(Bundle)可能会被调用(它可能会安全调用onPause()后,并允许和应用程序安全地等到onStop()以保存持久状态。

对于那些没有被标记为可以被驱动的方法,活动的进程不会被系统从调用方法开始并在其返回后继续进行。 因此,活动处于可调整状态,例如,在onPause()之后至onPause()的开始onResume()

Configuration Changes

如果设备的配置(由Resources.Configuration类定义)发生更改,则显示用户界面的任何内容都需要更新以匹配该配置。 由于Activity是与用户交互的主要机制,因此它包含对处理配置更改的特殊支持。

除非另有说明,否则配置更改(例如屏幕方向,语言,输入设备等的更改)将导致当前活动被破坏 ,并在适当情况下正常onPause() onStop()onDestroy()活动生命周期过程。 如果活动位于前台或用户可见,则在该实例中调用onDestroy()后,将创建一个活动的新实例,并使用前一个实例从onSaveInstanceState(Bundle)生成的所有onSaveInstanceState(Bundle)

这是因为任何应用程序资源(包括布局文件)都可以根据任何配置值进行更改。 因此,处理配置更改的唯一安全方法是重新检索所有资源,包括布局,可绘制和字符串。 因为活动必须已经知道如何保存其状态并从该状态重新创建自己,所以这是通过新配置使活动自行重新启动的便捷方式。

在某些特殊情况下,您可能希望基于一种或多种类型的配置更改绕过重新启动活动。 这是通过其清单中的android:configChanges属性完成的。 对于任何类型的配置更改,如果您在那里处理,则会收到对当前活动的onConfigurationChanged(Configuration)方法的调用,而不是重新启动。 但是,如果配置更改涉及任何不处理的情况,则该活动仍会重新启动, onConfigurationChanged(Configuration)不会调用onConfigurationChanged(Configuration)

Starting Activities and Getting Results

startActivity(Intent)方法用于启动一个新活动,该活动将放置在活动堆栈的顶部。 它需要一个参数,一个Intent ,它描述了要执行的活动。

有时您想在活动结束时从活动中取回结果。 例如,您可以开始一项活动,让用户在联系人列表中选择一个人; 当它结束时,它返回被选中的人。 要做到这一点,您需要使用第二个整数参数来标识startActivityForResult(Intent, int)版本的呼叫。 结果将通过您的onActivityResult(int, int, Intent)方法返回。

当活动退出时,它可以调用setResult(int)将数据返回给其父项。 它必须始终提供结果代码,可以是标准结果RESULT_CANCELED,RESULT_OK或从RESULT_FIRST_USER开始的任何自定义值。 另外,它可以选择返回一个包含任何其他想要的数据的Intent。 所有这些信息与其最初提供的整数标识符一起显示在父母的Activity.onActivityResult()

如果某个子活动由于某种原因(例如崩溃)而失败,则父活动将收到一个结果,其结果为RESULT_CANCELED。

 public class MyActivity extends Activity {
     ...

     static final int PICK_CONTACT_REQUEST = 0;

     public boolean onKeyDown(int keyCode, KeyEvent event) {
         if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
             // When the user center presses, let them pick a contact.
             startActivityForResult(
                 new Intent(Intent.ACTION_PICK,
                 new Uri("content://contacts")),
                 PICK_CONTACT_REQUEST);
            return true;
         }
         return false;
     }

     protected void onActivityResult(int requestCode, int resultCode,
             Intent data) {
         if (requestCode == PICK_CONTACT_REQUEST) {
             if (resultCode == RESULT_OK) {
                 // A contact was picked.  Here we will just display it
                 // to the user.
                 startActivity(new Intent(Intent.ACTION_VIEW, data));
             }
         }
     }
 }
 

Saving Persistent State

通常有两种持久状态比一个活动将要处理的情况:共享类文件数据(通常存储在使用 content provider的SQLite数据库中)和内部状态(如用户首选项)。

对于内容提供商数据,我们建议活动使用“就地编辑”用户模型。 也就是说,用户进行的任何编辑都可以立即生效,而无需额外的确认步骤。 支持这个模型通常是遵循两条规则的简单事情:

此模型旨在防止用户在活动之间导航时数据丢失,并允许系统在其暂停后随时安全地终止活动(因为系统资源在其他地方需要)。 请注意,这意味着用户从您的活动中按下BACK 并不意味着“取消” - 这意味着将活动的当前内容保存起来。 必须通过一些其他机制来提供取消活动中的编辑,例如明确的“还原”或“撤消”选项。

有关内容提供者的更多信息,请参阅content package 这些是不同活动如何在自己之间调用和传播数据的关键方面。

Activity类还提供了一个用于管理与活动关联的内部持久状态的API。 例如,这可用于记录日历(日视图或周视图)中用户首选的初始显示或Web浏览器中用户的默认主页。

活动持久状态通过方法getPreferences(int)进行管理,允许您检索和修改与活动关联的一组名称/值对。 要使用在多个应用程序组件(活动,接收器,服务,提供者)之间共享的首选项,可以使用底层的Context.getSharedPreferences()方法来检索以特定名称存储的首选项对象。 (请注意,无法跨应用程序包共享设置数据 - 因为您需要一个内容提供商。)

以下是日历活动的摘录,该日历活动将用户的首选视图模式存储在其持久设置中:

 public class CalendarActivity extends Activity {
     ...

     static final int DAY_VIEW_MODE = 0;
     static final int WEEK_VIEW_MODE = 1;

     private SharedPreferences mPrefs;
     private int mCurViewMode;

     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);

         SharedPreferences mPrefs = getSharedPreferences();
         mCurViewMode = mPrefs.getInt("view_mode", DAY_VIEW_MODE);
     }

     protected void onPause() {
         super.onPause();

         SharedPreferences.Editor ed = mPrefs.edit();
         ed.putInt("view_mode", mCurViewMode);
         ed.commit();
     }
 }
 

Permissions

在其清单的<activity>标记中声明时,可以强制执行启动特定活动的能力。 通过这样做,其他应用程序将需要在其自己的清单中声明相应的<uses-permission>元素,以便能够开始该活动。

启动活动时,您可以在意图上设置Intent.FLAG_GRANT_READ_URI_PERMISSION和/或Intent.FLAG_GRANT_WRITE_URI_PERMISSION 这将授予Activity访问Intent中的特定URI的权限。 访问将保持到活动完成(它将保留在主机进程中被杀死和其他临时销毁)。 GINGERBREAD ,如果Activity已经创建并且新的Intent被传递到onNewIntent(Intent) ,那么任何新授予的URI权限都将被添加到它现有的权限中。

有关权限和安全性的更多信息,请参阅Security and Permissions文档。

Process Lifecycle

Android系统试图尽可能长时间保持应用程序进程,但最终将需要在内存不足时删除旧进程。 Activity Lifecycle中所述 ,关于要删除哪个进程的决定与用户与之交互的状态密切相关。 一般来说,根据其中运行的活动,可以有四个状态,这里按重要性顺序列出。 该系统会杀死不太重要的进程(最后一个),然后才会杀死更重要的进程(第一个进程)。

  1. 前景活动 (用户当前正在与之交互的屏幕顶部的活动)被认为是最重要的。 如果它使用比设备上可用的更多的内存,它的进程只会作为最后的手段被杀死。 通常此时设备已达到内存分页状态,因此这是保持用户界面响应所必需的。

  2. 可见活动 (对用户可见但不在前台的活动,例如坐在前台对话框后面的活动)被认为是非常重要的,并且除非需要保持前台活动运行,否则不会被杀死。

  3. 后台活动 (对用户不可见并且已暂停的活动)不再关键,因此系统可以安全地终止其进程以回收其他前台或可见进程的内存。 如果它的进程需要被onCreate(Bundle) ,那么当用户返回到活动状态(使其再次显示在屏幕上)时,其方法onCreate(Bundle)将使用之前在onSaveInstanceState(Bundle)提供的onSaveInstanceState(Bundle)以便它可以在同一时间重新启动状态为用户最后一次离开它。

  4. 一个空的进程是没有活动或其他应用程序组件的进程 (例如ServiceBroadcastReceiver类)。 随着记忆力变低,这些系统很快被系统杀死。 出于这个原因,您在活动之外执行的任何后台操作必须在活动BroadcastReceiver或Service的上下文中执行,以确保系统知道它需要保持您的流程。

有时一个Activity可能需要做一个独立于活动生命周期本身存在的长时间运行的操作。 一个例子可能是一个摄像头应用程序,它允许你将图片上传到网站。 上传可能需要很长时间,应用程序应允许用户在执行时离开应用程序。 为了达到这个目的,你的活动应该启动上传发生的Service 这样,系统就可以在上传过程中正确优先处理流程(认为它比其他不可见应用程序更重要),而不管原始活动是暂停,停止还是完成。

Summary

Constants

int DEFAULT_KEYS_DIALER

与默认密钥处理期间使用 setDefaultKeyMode(int)启动拨号程序。

int DEFAULT_KEYS_DISABLE

setDefaultKeyMode(int)一起使用来关闭密钥的默认处理。

int DEFAULT_KEYS_SEARCH_GLOBAL

setDefaultKeyMode(int)一起使用来指定未处理的击键将启动全局搜索(通常是网页搜索,但某些平台可能会为全局搜索定义备用方法)

有关更多详细信息,请参阅 android.app.SearchManager

int DEFAULT_KEYS_SEARCH_LOCAL

setDefaultKeyMode(int)一起使用来指定未处理的击键将启动应用程序定义的搜索。

int DEFAULT_KEYS_SHORTCUT

使用 setDefaultKeyMode(int)在默认密钥处理中执行菜单快捷方式。

int RESULT_CANCELED

标准活动结果:操作取消。

int RESULT_FIRST_USER

开始用户定义的活动结果。

int RESULT_OK

标准活动结果:操作成功。

Inherited constants

From class android.content.Context
From interface android.content.ComponentCallbacks2

Fields

protected static final int[] FOCUSED_STATE_SET

Public constructors

Activity()

Public methods

void addContentView(View view, ViewGroup.LayoutParams params)

为活动添加一个额外的内容视图。

void closeContextMenu()

如果显示,以编程方式关闭最近打开的上下文菜单。

void closeOptionsMenu()

选择性地关闭选项菜单。

PendingIntent createPendingResult(int requestCode, Intent data, int flags)

创建一个新的PendingIntent对象,您可以将其交给其他人,供他们用来将结果数据发送回您的 onActivityResult(int, int, Intent)回调。

final void dismissDialog(int id)

此方法在API级别13中已弃用。请改为使用新的DialogFragment类和FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

final void dismissKeyboardShortcutsHelper()

关闭键盘快捷键屏幕。

boolean dispatchGenericMotionEvent(MotionEvent ev)

被调用来处理通用运动事件。

boolean dispatchKeyEvent(KeyEvent event)

被调用来处理关键事件。

boolean dispatchKeyShortcutEvent(KeyEvent event)

被调用来处理键快捷键事件。

boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event)

打电话来处理 AccessibilityEvent的人口。

boolean dispatchTouchEvent(MotionEvent ev)

被调用来处理触摸屏事件。

boolean dispatchTrackballEvent(MotionEvent ev)

被称为处理轨迹球事件。

void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args)

将活动的状态打印到给定的流中。

void enterPictureInPictureMode()

以画中画模式放置活动。

View findViewById(int id)

查找由 onCreate(Bundle)中处理的XML中的id属性标识的视图。

void finish()

当你的活动完成并且应该关闭时调用它。

void finishActivity(int requestCode)

强制完成您之前以 startActivityForResult(Intent, int)开始的另一项活动。

void finishActivityFromChild(Activity child, int requestCode)

当这个人的一个孩子活动调用它的finishActivity()时,这被调用。

void finishAffinity()

完成此活动以及当前任务中紧靠其下的具有相同关联性的所有活动。

void finishAfterTransition()

反转活动场景条目转换并触发调用活动以反转其退出转换。

void finishAndRemoveTask()

当你的活动完成并且应该关闭时调用它,并且应该完成任务,作为完成任务的根活动的一部分。

void finishFromChild(Activity child)

当这个小孩的活动称为 finish()方法时,这被称为。

ActionBar getActionBar()

检索对此活动的ActionBar的引用。

final Application getApplication()

返回拥有此活动的应用程序。

ComponentName getCallingActivity()

返回调用此活动的活动的名称。

String getCallingPackage()

返回调用此活动的包的名称。

int getChangingConfigurations()

如果此活动由于无法处理正在更改的配置参数而被销毁(因此 调用其方法 onConfigurationChanged(Configuration) ),则可以使用此方法来发现在销毁过程中发生的一组更改。

ComponentName getComponentName()

返回此活动的完整组件名称。

Scene getContentScene()

检索代表此窗口当前内容的 Scene

TransitionManager getContentTransitionManager()

在此窗口中检索负责默认转换的 TransitionManager

View getCurrentFocus()

在此活动的窗口上调用 getCurrentFocus()以返回当前聚焦的视图。

FragmentManager getFragmentManager()

返回FragmentManager以与与此活动关联的片段进行交互。

Intent getIntent()

返回开始此活动的意图。

Object getLastNonConfigurationInstance()

检索先前由 onRetainNonConfigurationInstance()返回的非配置实例数据。

LayoutInflater getLayoutInflater()

方便拨打 getLayoutInflater()

LoaderManager getLoaderManager()

为这个活动返回LoaderManager,如果需要的话创建它。

String getLocalClassName()

返回此活动的类名,并且已删除包前缀。

final MediaController getMediaController()

获取当该活动处于前台时应该接收媒体密钥和音量事件的控制器。

MenuInflater getMenuInflater()

用此上下文返回一个 MenuInflater

final Activity getParent()

如果此视图是嵌入的子项,则返回父活动。

Intent getParentActivityIntent()

获取一个 Intent ,它将启动由此活动的逻辑父项指定的显式目标活动。

SharedPreferences getPreferences(int mode)

检索一个 SharedPreferences对象,用于访问此活动专用的首选项。

Uri getReferrer()

返回关于谁启动了此活动的信息。

int getRequestedOrientation()

返回当前请求的活动方向。

final SearchEvent getSearchEvent()

在onSearchRequested()回调期间,该函数将返回触发回调的 SearchEvent (如果存在)。

Object getSystemService(String name)

按名称将句柄返回到系统级服务。

int getTaskId()

返回此活动所在任务的标识符。

final CharSequence getTitle()
final int getTitleColor()
VoiceInteractor getVoiceInteractor()

检索用户正在进行的与此活动交互的活动 VoiceInteractor

final int getVolumeControlStream()

获取建议的音频流,其音量应由硬件音量控制器更改。

Window getWindow()

检索活动的当前 Window

WindowManager getWindowManager()

检索用于显示自定义窗口的窗口管理器。

boolean hasWindowFocus()

如果此活动的 窗口当前具有窗口焦点,则返回true。

void invalidateOptionsMenu()

声明选项菜单已更改,因此应重新创建。

boolean isChangingConfigurations()

检查此活动是否处于被销毁的过程中,以便用新配置重新创建。

final boolean isChild()

此活动是否嵌入到其他活动中?

boolean isDestroyed()

如果对Activity执行了最后的 onDestroy()调用,则返回true,所以此实例现已停止。

boolean isFinishing()

请检查此活动是否处于完成过程中,可能是因为您调用了 finish()或其他人已请求完成此活动。

boolean isImmersive()

指示该活动是“沉浸式”的位,并且如果可能的话不应该被通知中断。

boolean isInMultiWindowMode()

如果活动当前处于多窗口模式,则返回true。

boolean isInPictureInPictureMode()

如果活动当前处于画中画模式,则返回true。

boolean isLocalVoiceInteractionSupported()

查询当前启用的语音交互服务是否支持返回语音交互者以供活动使用。

boolean isTaskRoot()

返回此活动是否是任务的根源。

boolean isVoiceInteraction()

检查此活动是否作为与用户的语音交互的一部分运行。

boolean isVoiceInteractionRoot()

isVoiceInteraction()一样,但只有在这也是语音交互的根源时才返回true。

final Cursor managedQuery(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder)

此方法在API级别11中已弃用。请改为使用CursorLoader

boolean moveTaskToBack(boolean nonRoot)

将包含此活动的任务移到活动堆栈的后面。

boolean navigateUpTo(Intent upIntent)

从此活动导航到由upIntent指定的活动,在此过程中完成此活动。

boolean navigateUpToFromChild(Activity child, Intent upIntent)

当这个小孩的活动调用其方法 navigateUpTo(Intent)调用它。

void onActionModeFinished(ActionMode mode)

通知活动已完成动作模式。

void onActionModeStarted(ActionMode mode)

通知Activity该动作模式已经启动。

void onActivityReenter(int resultCode, Intent data)

当通过活动转换启动的活动通过返回的活动转换公开此活动时,会给您提供resultCode和其中的任何其他数据。

void onAttachFragment(Fragment fragment)

当片段被附加到该活动时,在调用 Fragment.onAttach()方法之后和 Fragment.onCreate()之前立即调用。

void onAttachedToWindow()

当与活动关联的主窗口已连接到窗口管理器时调用。

void onBackPressed()

当活动检测到用户按下后退键时调用。

void onConfigurationChanged(Configuration newConfig)

设备配置在您的活动正在运行时更改时由系统调用。

void onContentChanged()

只要屏幕的内容视图发生变化(由于调用 Window.setContentViewWindow.addContentView ), Window.setContentView调用此钩子。

boolean onContextItemSelected(MenuItem item)

只要选择了上下文菜单中的项目,就会调用该钩子。

void onContextMenuClosed(Menu menu)

只要关闭上下文菜单(通过用户使用后退/菜单按钮取消菜单或选择某个项目时),就会调用该钩子。

void onCreate(Bundle savedInstanceState, PersistableBundle persistentState)

onCreate(android.os.Bundle)相同,但要求使用属性 persistableMode设置为 persistAcrossReboots创建的活动。

void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)

当即将显示 view的上下文菜单时调用。

CharSequence onCreateDescription()

为此活动生成新的描述。

void onCreateNavigateUpTaskStack(TaskStackBuilder builder)

定义将在不同任务的向上导航期间生成的合成任务堆栈。

boolean onCreateOptionsMenu(Menu menu)

初始化活动标准选项菜单的内容。

boolean onCreatePanelMenu(int featureId, Menu menu)

活动的默认实现为 onCreatePanelMenu(int, Menu)

View onCreatePanelView(int featureId)

活动的默认实现 onCreatePanelView(int)

boolean onCreateThumbnail(Bitmap outBitmap, Canvas canvas)

为此活动生成一个新的缩略图。

View onCreateView(View parent, String name, Context context, AttributeSet attrs)

标准实施 onCreateView(View, String, Context, AttributeSet)与返回的LayoutInflater充气时使用 getSystemService(Class )

View onCreateView(String name, Context context, AttributeSet attrs)

onCreateView(String, Context, AttributeSet)标准实现,当使用由getSystemService(Class ) 返回的 getSystemService(Class ) 膨胀时使用。

void onDetachedFromWindow()

当与活动关联的主窗口已从窗口管理器中分离时调用。

void onEnterAnimationComplete()

活动在他们的窗户开始动画的期间无法绘制。

boolean onGenericMotionEvent(MotionEvent event)

当一个普通的运动事件没有被任何活动内部的视图处理时调用。

boolean onKeyDown(int keyCode, KeyEvent event)

当按下某个键并且不被任何活动内部的视图处理时调用。

boolean onKeyLongPress(int keyCode, KeyEvent event)

默认实现 KeyEvent.Callback.onKeyLongPress() :始终返回false(不处理事件)。

boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)

默认实现 KeyEvent.Callback.onKeyMultiple() :始终返回false(不处理事件)。

boolean onKeyShortcut(int keyCode, KeyEvent event)

在“活动”中的任何视图未处理键快捷方式事件时调用。

boolean onKeyUp(int keyCode, KeyEvent event)

当密钥被释放并且不被任何活动内部的视图处理时调用。

void onLocalVoiceInteractionStarted()

回调表示 startLocalVoiceInteraction(Bundle)已导致语音交互会话正在启动。

void onLocalVoiceInteractionStopped()

回叫表示本地语音交互已停止,因为它是通过呼叫 stopLocalVoiceInteraction()请求的,或者是由用户取消了。

void onLowMemory()

这在整个系统内存不足时调用,并且主动运行的进程应该修剪内存使用情况。

boolean onMenuItemSelected(int featureId, MenuItem item)

活动的默认实现 onMenuItemSelected(int, MenuItem)

boolean onMenuOpened(int featureId, Menu menu)

用户打开面板菜单时调用。

void onMultiWindowModeChanged(boolean isInMultiWindowMode)

当活动从全屏模式更改为多窗口模式时,由系统调用,反之亦然。

boolean onNavigateUp()

只要用户选择在应用程序的活动层次结构中从操作栏中向上导航,就会调用此方法。

boolean onNavigateUpFromChild(Activity child)

这是在这个人的小孩活动尝试向上导航时调用的。

boolean onOptionsItemSelected(MenuItem item)

只要选择了选项菜单中的项目,就会调用该钩子。

void onOptionsMenuClosed(Menu menu)

只要选项菜单被关闭(通过用户使用后退/菜单按钮取消菜单,或选择某个项目时),就会调用该钩子。

void onPanelClosed(int featureId, Menu menu)

活动的默认实现为 onPanelClosed(int, Menu)

void onPictureInPictureModeChanged(boolean isInPictureInPictureMode)

当活动从画中画模式切换到画中画模式时由系统调用。

void onPostCreate(Bundle savedInstanceState, PersistableBundle persistentState)

这与 onPostCreate(Bundle)相同,但对于使用属性 persistableMode设置为 persistAcrossReboots创建的活动 persistAcrossReboots

void onPrepareNavigateUpTaskStack(TaskStackBuilder builder)

准备将从不同任务的Up导航过程中生成的合成任务堆栈。

boolean onPrepareOptionsMenu(Menu menu)

准备显示屏幕的标准选项菜单。

boolean onPreparePanel(int featureId, View view, Menu menu)

活动的默认实现为 onPreparePanel(int, View, Menu)

void onProvideAssistContent(AssistContent outContent)

这在用户请求协助时被调用,以提供与当前活动相关的内容的参考。

void onProvideAssistData(Bundle data)

这在用户请求协助时调用,用当前应用程序的所有上下文构建完整的 ACTION_ASSIST意图。

void onProvideKeyboardShortcuts(List<KeyboardShortcutGroup> data, Menu menu, int deviceId)

在当前窗口请求键盘快捷键时调用。

Uri onProvideReferrer()

覆盖,为应用目前显示的内容生成所需的引荐来源。

void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)

从请求权限回调结果。

void onRestoreInstanceState(Bundle savedInstanceState, PersistableBundle persistentState)

这与 onRestoreInstanceState(Bundle)相同,但是对于使用属性 persistableMode设置为 persistAcrossReboots创建的活动而被调用。

Object onRetainNonConfigurationInstance()

由系统调用,作为销毁由于配置更改而导致的活动的一部分,当知道将立即为新配置创建新实例时。

void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState)

这与 onSaveInstanceState(Bundle)相同,但是对于使用属性 persistableMode设置为 persistAcrossReboots创建的活动而被调用。

boolean onSearchRequested(SearchEvent searchEvent)

当用户发出开始搜索的愿望时,这个钩子被调用。

boolean onSearchRequested()

当用户指示开始搜索的愿望时调用。

void onStateNotSaved()

onResume()即将到来时,在 onNewIntent(Intent)onActivityResult(int, int, Intent)等其他预恢复回调之前调用。

boolean onTouchEvent(MotionEvent event)

当触摸屏事件未被其下的任何视图处理时调用。

boolean onTrackballEvent(MotionEvent event)

当轨迹球被移动并且不被任何活动内部的视图处理时调用。

void onTrimMemory(int level)

当操作系统确定进程从其进程中删除不需要的内存是一个好时机时调用。

void onUserInteraction()

每当键,触摸或轨迹球事件被分派到活动时调用。

void onVisibleBehindCanceled()

当对此活动的半透明活动变得不透明或正在启动其他活动时调用。

void onWindowAttributesChanged(WindowManager.LayoutParams params)

这在每当当前窗口属性改变时被调用。

void onWindowFocusChanged(boolean hasFocus)

当活动当前的 Window获得或失去焦点时调用。

ActionMode onWindowStartingActionMode(ActionMode.Callback callback, int type)

当此窗口的动作模式正在启动时调用。

ActionMode onWindowStartingActionMode(ActionMode.Callback callback)

为活动提供一个控制系统请求的操作模式的UI的机会。

void openContextMenu(View view)

以编程方式打开特定 view的上下文菜单。

void openOptionsMenu()

以编程方式打开选项菜单。

void overridePendingTransition(int enterAnim, int exitAnim)

startActivity(Intent)finish()之一的风格之后立即调用以指定明确的过渡动画以执行下一步。

void postponeEnterTransition()

当Activity开始于 makeSceneTransitionAnimation(Activity, android.util.Pair[])时,推迟进入活动转换。

void recreate()

导致使用新实例重新创建此活动。

void registerForContextMenu(View view)

为给定视图注册一个上下文菜单(多个视图可以显示上下文菜单)。

boolean releaseInstance()

请求释放本活动的本地应用程序实例以释放其内存。

final void removeDialog(int id)

此方法在API级别13中已弃用。请改为使用新的DialogFragment级别与FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

void reportFullyDrawn()

向系统报告您的应用程序现在已完全绘制,纯粹用于诊断目的(称其不会影响活动的可见行为)。

DragAndDropPermissions requestDragAndDropPermissions(DragEvent event)

创建 DragAndDropPermissions绑定到此活动的对象并控制与 DragEvent相关的内容URI的访问权限。

final void requestPermissions(String[] permissions, int requestCode)

请求授予此应用程序的权限。

final void requestShowKeyboardShortcuts()

请求键盘快捷方式屏幕出现。

boolean requestVisibleBehind(boolean visible)

希望保持可见上面摆着一个半透明的背后活动活动必须随时打电话的开始之间的这种方法 onResume() ,并从返回 onPause()

final boolean requestWindowFeature(int featureId)

启用扩展窗口功能。

final void runOnUiThread(Runnable action)

在UI线程上运行指定的操作。

void setActionBar(Toolbar toolbar)

设置 Toolbar作为此活动窗口的 ActionBar

void setContentTransitionManager(TransitionManager tm)

设置 TransitionManager用于此窗口中的默认转换。

void setContentView(View view, ViewGroup.LayoutParams params)

将活动内容设置为显式视图。

void setContentView(View view)

将活动内容设置为显式视图。

void setContentView(int layoutResID)

设置布局资源的活动内容。

final void setDefaultKeyMode(int mode)

选择此活动的默认密钥处理。

void setEnterSharedElementCallback(SharedElementCallback callback)

当使用 makeSceneTransitionAnimation(Activity, android.view.View, String)启动Activity时,将调用 回调来处理 启动的 Activity上的共享元素。

void setExitSharedElementCallback(SharedElementCallback callback)

当使用 makeSceneTransitionAnimation(Activity, android.view.View, String)启动Activity时,将调用 回调来处理 启动 Activity上的共享元素。

final void setFeatureDrawable(int featureId, Drawable drawable)

方便拨打 setFeatureDrawable(int, Drawable)

final void setFeatureDrawableAlpha(int featureId, int alpha)

方便拨打 setFeatureDrawableAlpha(int, int)

final void setFeatureDrawableResource(int featureId, int resId)

方便拨打 setFeatureDrawableResource(int, int)

final void setFeatureDrawableUri(int featureId, Uri uri)

方便拨打 setFeatureDrawableUri(int, Uri)

void setFinishOnTouchOutside(boolean finish)

设置此活动是否在窗口范围外触摸完成。

void setImmersive(boolean i)

调整当前沉浸模式设置。

void setIntent(Intent newIntent)

更改由 getIntent()返回的意图。

final void setMediaController(MediaController controller)

设置 MediaController将媒体密钥和音量更改发送到。

final void setProgress(int progress)

此方法在API级别24中已弃用。不再支持从API 21开始。

final void setProgressBarIndeterminate(boolean indeterminate)

此方法在API级别24中已弃用。不再支持从API 21开始。

final void setProgressBarIndeterminateVisibility(boolean visible)

此方法在API级别24中已弃用。不再支持从API 21开始。

final void setProgressBarVisibility(boolean visible)

此方法在API级别24中已弃用。不再支持从API 21开始。

void setRequestedOrientation(int requestedOrientation)

更改此活动的所需方向。

final void setResult(int resultCode, Intent data)

调用此方法设置您的活动将返回给调用者的结果。

final void setResult(int resultCode)

调用此方法设置您的活动将返回给调用者的结果。

final void setSecondaryProgress(int secondaryProgress)

此方法在API级别24中已弃用。不再支持从API 21开始。

void setTaskDescription(ActivityManager.TaskDescription taskDescription)

使用此活动设置描述任务的信息,以便在最近的系统UI中呈现。

void setTheme(int resid)

为此上下文设置基本主题。

void setTitle(CharSequence title)

更改与此活动关联的标题。

void setTitle(int titleId)

更改与此活动关联的标题。

void setTitleColor(int textColor)

此方法在API级别21中已弃用。请改用操作栏样式。

void setVisible(boolean visible)

控制此活动的主窗口是否可见。

final void setVolumeControlStream(int streamType)

建议音量应由硬件音量控制器更改的音频流。

void setVrModeEnabled(boolean enabled, ComponentName requestedComponent)

为此活动启用或禁用虚拟现实(VR)模式。

boolean shouldShowRequestPermissionRationale(String permission)

获取是否应该以请求许可的理由显示UI。

boolean shouldUpRecreateTask(Intent targetIntent)

如果应用程序在使用targetIntent从此活动导航“向上”时重新创建任务,则返回true。

boolean showAssist(Bundle args)

要求将当前助理显示给用户。

final boolean showDialog(int id, Bundle args)

此方法在API级别13中已弃用。请改为使用带FragmentManager的新DialogFragment类; 这也可以通过Android兼容性套件在较早的平台上使用。

final void showDialog(int id)

此方法在API级别13中已弃用。请改为使用新的DialogFragment类和FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

void showLockTaskEscapeMessage()

向用户显示系统定义的消息,以告诉用户如何退出锁定任务模式。

ActionMode startActionMode(ActionMode.Callback callback, int type)

启动给定类型的操作模式。

ActionMode startActionMode(ActionMode.Callback callback)

启动默认类型 TYPE_PRIMARY的操作模式。

void startActivities(Intent[] intents, Bundle options)

启动一项新活动。

void startActivities(Intent[] intents)

与没有指定选项的 startActivities(Intent[], Bundle)相同。

void startActivity(Intent intent)

与没有指定选项的 startActivity(Intent, Bundle)相同。

void startActivity(Intent intent, Bundle options)

启动一项新活动。

void startActivityForResult(Intent intent, int requestCode)

与呼叫 startActivityForResult(Intent, int, Bundle)没有选项相同。

void startActivityForResult(Intent intent, int requestCode, Bundle options)

在完成后启动您希望得到结果的活动。

void startActivityFromChild(Activity child, Intent intent, int requestCode)

与呼叫 startActivityFromChild(Activity, Intent, int, Bundle)没有选项相同。

void startActivityFromChild(Activity child, Intent intent, int requestCode, Bundle options)

当这个小孩的活动调用 startActivity(Intent)startActivityForResult(Intent, int)方法时,这被称为。

void startActivityFromFragment(Fragment fragment, Intent intent, int requestCode, Bundle options)

当此活动中的片段调用其 startActivity(Intent)startActivityForResult(Intent, int)方法时,会调用此方法。

void startActivityFromFragment(Fragment fragment, Intent intent, int requestCode)

与呼叫 startActivityFromFragment(Fragment, Intent, int, Bundle)没有选项相同。

boolean startActivityIfNeeded(Intent intent, int requestCode, Bundle options)

仅当需要新的活动实例才能处理给定的Intent时才启动活动的特殊变体。

boolean startActivityIfNeeded(Intent intent, int requestCode)

与呼叫 startActivityIfNeeded(Intent, int, Bundle)没有选项相同。

void startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)

与呼叫 startIntentSender(IntentSender, Intent, int, int, int, Bundle)没有选项相同。

void startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)

startActivity(Intent, Bundle)一样,但是需要一个IntentSender来启动; 有关更多信息,请参阅startIntentSenderForResult(IntentSender, int, Intent, int, int, int, Bundle)

void startIntentSenderForResult(IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)

与呼叫 startIntentSenderForResult(IntentSender, int, Intent, int, int, int, Bundle)没有选项相同。

void startIntentSenderForResult(IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)

startActivityForResult(Intent, int)一样,但允许您使用IntentSender来描述要启动的活动。

void startIntentSenderFromChild(Activity child, IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)

startActivityFromChild(Activity, Intent, int) ,但采取了IntentSender; 有关更多信息,请参阅startIntentSenderForResult(IntentSender, int, Intent, int, int, int)

void startIntentSenderFromChild(Activity child, IntentSender intent, int requestCode, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)

与呼叫 startIntentSenderFromChild(Activity, IntentSender, int, Intent, int, int, int, Bundle) ,没有选项。

void startLocalVoiceInteraction(Bundle privateOptions)

开始本地语音交互会话。

void startLockTask()

请求将此活动置于用户锁定当前任务的模式。

void startManagingCursor(Cursor c)

此方法在API级别11中已弃用。请改为使用新的CursorLoader类别与LoaderManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

boolean startNextMatchingActivity(Intent intent, Bundle options)

开始活动的特殊版本,供替换其他活动组件时使用。

boolean startNextMatchingActivity(Intent intent)

与呼叫 startNextMatchingActivity(Intent, Bundle)没有选项相同。

void startPostponedEnterTransition()

postponeEnterTransition()被调用后开始推迟转换。

void startSearch(String initialQuery, boolean selectInitialQuery, Bundle appSearchData, boolean globalSearch)

这个钩子被调用来启动搜索UI。

void stopLocalVoiceInteraction()

请求终止以前使用 startLocalVoiceInteraction(Bundle)开始的当前语音交互。

void stopLockTask()

允许用户切换当前任务。

void stopManagingCursor(Cursor c)

此方法在API级别11中已弃用。请改为使用新的CursorLoader类别与LoaderManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

void takeKeyEvents(boolean get)

要求重要事件来参加这项活动。

void triggerSearch(String query, Bundle appSearchData)

类似于 startSearch(String, boolean, Bundle, boolean) ,但实际上在调用搜索对话框后触发搜索查询。

void unregisterForContextMenu(View view)

防止为给定视图显示上下文菜单。

Protected methods

void onActivityResult(int requestCode, int resultCode, Intent data)

当您启动的活动退出时调用,为您提供您启动的requestCode,返回的resultCode以及其中的任何其他数据。

void onApplyThemeResource(Resources.Theme theme, int resid, boolean first)

setTheme(int)getTheme()调用以将主题资源应用于当前主题对象。

void onChildTitleChanged(Activity childActivity, CharSequence title)
void onCreate(Bundle savedInstanceState)

当活动开始时调用。

Dialog onCreateDialog(int id)

此方法在API级别8中已弃用。旧无参数版本onCreateDialog(int, Bundle)

Dialog onCreateDialog(int id, Bundle args)

这种方法被弃用API等级13.使用新DialogFragmentFragmentManager代替; 这也可以通过Android兼容性套件在较早的平台上使用。

void onDestroy()

在活动销毁之前执行任何最终清理。

void onNewIntent(Intent intent)

这是针对在其包中将launchMode设置为“singleTop”的活动或客户端在致电 startActivity(Intent)时使用 FLAG_ACTIVITY_SINGLE_TOP标志的情况下调用的。

void onPause()

作为活动生命周期的一部分,当活动进入后台但尚未(尚未)死亡时调用。

void onPostCreate(Bundle savedInstanceState)

当活动启动完成时调用(在 onStart()onRestoreInstanceState(Bundle)之后)。

void onPostResume()

当活动恢复完成时调用(在 onResume()之后)。

void onPrepareDialog(int id, Dialog dialog, Bundle args)

此方法在API级别13中已弃用。请改为使用新的DialogFragment类别与FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

void onPrepareDialog(int id, Dialog dialog)

此方法在API级别8中已弃用。旧无参数版本onPrepareDialog(int, Dialog, Bundle)

void onRestart()

当当前活动重新显示给用户(用户已导航回到该用户)时在 onStop()之后调用。

void onRestoreInstanceState(Bundle savedInstanceState)

onStart()之后调用此方法,当此活动正在从之前保存的状态重新初始化时,此处已在 savedInstanceState给出

void onResume()

后调用 onRestoreInstanceState(Bundle)onRestart() ,或 onPause() ,为您的活动启动与用户交互。

void onSaveInstanceState(Bundle outState)

在被杀之前调用以从活动中检索每个实例的状态,以便可以在 onCreate(Bundle)onRestoreInstanceState(Bundle)恢复状态(由此方法填充的 Bundle将传递给两者)。

void onStart()

onCreate(Bundle)之后或在 onRestart()之后 onRestart()活动已停止但现在再次显示给用户时调用。

void onStop()

当用户不再可见时调用。

void onTitleChanged(CharSequence title, int color)
void onUserLeaveHint()

作为活动生命周期的一部分,当活动即将作为用户选择的结果进入后台时调用。

Inherited methods

From class android.view.ContextThemeWrapper
From class android.content.ContextWrapper
From class android.content.Context
From class java.lang.Object
From interface android.view.LayoutInflater.Factory2
From interface android.view.Window.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.View.OnCreateContextMenuListener
From interface android.content.ComponentCallbacks2
From interface android.view.LayoutInflater.Factory
From interface android.content.ComponentCallbacks

Constants

DEFAULT_KEYS_DIALER

Added in API level 1
int DEFAULT_KEYS_DIALER

使用 setDefaultKeyMode(int)在默认密钥处理期间启动拨号程序。

也可以看看:

常数值:1(0x00000001)

DEFAULT_KEYS_DISABLE

Added in API level 1
int DEFAULT_KEYS_DISABLE

setDefaultKeyMode(int)一起使用来关闭密钥的默认处理。

也可以看看:

常量值:0(0x00000000)

DEFAULT_KEYS_SEARCH_GLOBAL

Added in API level 1
int DEFAULT_KEYS_SEARCH_GLOBAL

setDefaultKeyMode(int)一起使用指定未处理的击键将启动全局搜索(通常是网页搜索,但某些平台可能会为全局搜索定义备用方法)

有关更多详细信息,请参阅 android.app.SearchManager

也可以看看:

常量值:4(0x00000004)

DEFAULT_KEYS_SEARCH_LOCAL

Added in API level 1
int DEFAULT_KEYS_SEARCH_LOCAL

setDefaultKeyMode(int)一起使用来指定未处理的击键将启动应用程序定义的搜索。 (如果应用程序或活动实际上未定义搜索,则键将被忽略。)

详情请参阅 android.app.SearchManager

也可以看看:

常量值:3(0x00000003)

DEFAULT_KEYS_SHORTCUT

Added in API level 1
int DEFAULT_KEYS_SHORTCUT

使用 setDefaultKeyMode(int)在默认密钥处理中执行菜单快捷方式。

也就是说,用户不需要按下菜单键来执行菜单快捷方式。

也可以看看:

常量值:2(0x00000002)

RESULT_CANCELED

Added in API level 1
int RESULT_CANCELED

标准活动结果:操作取消。

常量值:0(0x00000000)

RESULT_FIRST_USER

Added in API level 1
int RESULT_FIRST_USER

开始用户定义的活动结果。

常数值:1(0x00000001)

RESULT_OK

Added in API level 1
int RESULT_OK

标准活动结果:操作成功。

常量值:-1(0xffffffff)

Fields

FOCUSED_STATE_SET

Added in API level 1
int[] FOCUSED_STATE_SET

Public constructors

Activity

Added in API level 1
Activity ()

Public methods

addContentView

Added in API level 1
void addContentView (View view, 
                ViewGroup.LayoutParams params)

为活动添加一个额外的内容视图。 在活动中的现有视图之后添加 - 现有视图不会被删除。

Parameters
view View: The desired content to display.
params ViewGroup.LayoutParams: Layout parameters for the view.

closeContextMenu

Added in API level 3
void closeContextMenu ()

如果显示,以编程方式关闭最近打开的上下文菜单。

closeOptionsMenu

Added in API level 1
void closeOptionsMenu ()

选择性地关闭选项菜单。 如果选项菜单已关闭,则此方法不执行任何操作。

createPendingResult

Added in API level 1
PendingIntent createPendingResult (int requestCode, 
                Intent data, 
                int flags)

创建一个新的PendingIntent对象,您可以将其交给其他人,供他们用来将结果数据发送回您的onActivityResult(int, int, Intent)回调。 创建的对象可以是一次性的(在返回结果后变为无效的)或多个(允许通过它发送任何数量的结果)。

Parameters
requestCode int: Private request code for the sender that will be associated with the result data when it is returned. The sender can not modify this value, allowing you to identify incoming results.
data Intent: Default data to supply in the result, which may be modified by the sender.
flags int: May be PendingIntent.FLAG_ONE_SHOT, PendingIntent.FLAG_NO_CREATE, PendingIntent.FLAG_CANCEL_CURRENT, PendingIntent.FLAG_UPDATE_CURRENT, or any of the flags as supported by Intent.fillIn() to control which unspecified parts of the intent that can be supplied when the actual send happens.
Returns
PendingIntent Returns an existing or new PendingIntent matching the given parameters. May return null only if PendingIntent.FLAG_NO_CREATE has been supplied.

也可以看看:

dismissDialog

Added in API level 1
void dismissDialog (int id)

此方法在API级别13中已被弃用。
改为使用带FragmentManager的新DialogFragment类; 这也可以通过Android兼容性套件在较早的平台上使用。

关闭以前通过 showDialog(int)显示的对话框。

Parameters
id int: The id of the managed dialog.
Throws
IllegalArgumentException if the id was not previously shown via showDialog(int).

也可以看看:

dismissKeyboardShortcutsHelper

Added in API level 24
void dismissKeyboardShortcutsHelper ()

关闭键盘快捷键屏幕。

dispatchGenericMotionEvent

Added in API level 12
boolean dispatchGenericMotionEvent (MotionEvent ev)

被调用来处理通用运动事件。 您可以覆盖它,以便在将所有通用运动事件分派到窗口之前拦截它们。 一定要为通常应该正常处理的通用运动事件调用此实现。

Parameters
ev MotionEvent: The generic motion event.
Returns
boolean boolean Return true if this event was consumed.

dispatchKeyEvent

Added in API level 1
boolean dispatchKeyEvent (KeyEvent event)

被调用来处理关键事件。 您可以覆盖它以在将所有关键事件分派到窗口之前拦截它们。 确保为应该正常处理的关键事件调用此实现。

Parameters
event KeyEvent: The key event.
Returns
boolean boolean Return true if this event was consumed.

dispatchKeyShortcutEvent

Added in API level 11
boolean dispatchKeyShortcutEvent (KeyEvent event)

被调用来处理键快捷键事件。 您可以重写此选项,以便在将所有快捷键事件分派到窗口之前拦截它们。 确保为应该正常处理的键快捷键事件调用此实现。

Parameters
event KeyEvent: The key shortcut event.
Returns
boolean True if this event was consumed.

dispatchPopulateAccessibilityEvent

Added in API level 4
boolean dispatchPopulateAccessibilityEvent (AccessibilityEvent event)

打电话来处理 AccessibilityEvent的人口。

Parameters
event AccessibilityEvent: The event.
Returns
boolean boolean Return true if event population was completed.

dispatchTouchEvent

Added in API level 1
boolean dispatchTouchEvent (MotionEvent ev)

被调用来处理触摸屏事件。 您可以覆盖此选项,以便在将所有触摸屏事件分派到窗口之前拦截它们。 请务必将此实现称为应该正常处理的触摸屏事件。

Parameters
ev MotionEvent: The touch screen event.
Returns
boolean boolean Return true if this event was consumed.

dispatchTrackballEvent

Added in API level 1
boolean dispatchTrackballEvent (MotionEvent ev)

被称为处理轨迹球事件。 您可以覆盖此选项,以便在将所有轨迹球事件分派到窗口之前拦截它们。 请务必将此实施称为应正常处理的轨迹球事件。

Parameters
ev MotionEvent: The trackball event.
Returns
boolean boolean Return true if this event was consumed.

dump

Added in API level 11
void dump (String prefix, 
                FileDescriptor fd, 
                PrintWriter writer, 
                String[] args)

将活动的状态打印到给定的流中。 如果运行“adb shell dumpsys activity <activity_component_name>”,则会被调用。

Parameters
prefix String: Desired prefix to prepend at each line of output.
fd FileDescriptor: The raw file descriptor that the dump is being sent to.
writer PrintWriter: The PrintWriter to which you should dump your state. This will be closed for you after you return.
args String: additional arguments to the dump request.

enterPictureInPictureMode

Added in API level 24
void enterPictureInPictureMode ()

以画中画模式放置活动。

也可以看看:

findViewById

Added in API level 1
View findViewById (int id)

查找由 onCreate(Bundle)中处理的XML中的id属性标识的视图。

Parameters
id int
Returns
View The view if found or null otherwise.

finish

Added in API level 1
void finish ()

当你的活动完成并且应该关闭时调用它。 ActivityResult会传播给通过onActivityResult()启动的任何人。

finishActivity

Added in API level 1
void finishActivity (int requestCode)

强制完成之前以 startActivityForResult(Intent, int)开始的另一项活动。

Parameters
requestCode int: The request code of the activity that you had given to startActivityForResult(). If there are multiple activities started with this request code, they will all be finished.

finishActivityFromChild

Added in API level 1
void finishActivityFromChild (Activity child, 
                int requestCode)

当这个人的一个孩子活动调用它的finishActivity()时,这被调用。

Parameters
child Activity: The activity making the call.
requestCode int: Request code that had been used to start the activity.

finishAffinity

Added in API level 16
void finishAffinity ()

完成此活动以及当前任务中紧靠其下的具有相同关联性的所有活动。 这通常用于应用程序可以启动到另一个任务(例如,从其理解的内容类型的ACTION_VIEW开始),并且用户已经使用向上导航来切换出当前任务并转入其自己的任务。 在这种情况下,如果用户已经导航到第二个应用程序的任何其他活动,则应将所有这些作为任务切换的一部分从原始任务中移除。

请注意,这完成 不允许您提供结果到以前的活动,如果你正在尝试做这样一个异常将被抛出。

finishAfterTransition

Added in API level 21
void finishAfterTransition ()

反转活动场景条目转换并触发调用活动以反转其退出转换。 退出转换完成后, finish() 如果没有使用转换,则立即调用finish()并运行活动出口转换。

也可以看看:

finishAndRemoveTask

Added in API level 21
void finishAndRemoveTask ()

当你的活动完成并且应该关闭时调用它,并且应该完成任务,作为完成任务的根活动的一部分。

finishFromChild

Added in API level 1
void finishFromChild (Activity child)

当这个小孩的活动调用finish()方法时,这被调用。 默认实现简单地在此活动(父级)上调用finish(),完成整个组。

Parameters
child Activity: The activity making the call.

也可以看看:

getActionBar

Added in API level 11
ActionBar getActionBar ()

检索对此活动的ActionBar的引用。

Returns
ActionBar The Activity's ActionBar, or null if it does not have one.

getApplication

Added in API level 1
Application getApplication ()

返回拥有此活动的应用程序。

Returns
Application

getCallingActivity

Added in API level 1
ComponentName getCallingActivity ()

返回调用此活动的活动的名称。 这是setResult()的数据将发送给谁。 您可以使用此信息来验证是否允许收件人接收数据。

注意:如果调用活动不期待结果(即它没有使用包含请求代码的 startActivityForResult(Intent, int)表单),则调用包将为空。

Returns
ComponentName The ComponentName of the activity that will receive your reply, or null if none.

getCallingPackage

Added in API level 1
String getCallingPackage ()

返回调用此活动的包的名称。 这是setResult()的数据将发送给谁。 您可以使用此信息来验证是否允许收件人接收数据。

注意:如果调用活动不期待结果(即它没有使用包含请求代码的 startActivityForResult(Intent, int)表单),则调用包将为空。

注意:在JELLY_BEAN_MR2之前,这种方法的结果是不稳定的。 如果托管调用程序包的进程不再运行,它将返回null而不是正确的程序包名称。 您可以使用getCallingActivity()getCallingActivity()检索包名称。

Returns
String The package of the activity that will receive your reply, or null if none.

getChangingConfigurations

Added in API level 1
int getChangingConfigurations ()

如果此活动由于无法处理正在更改的配置参数而被销毁(因此调用其方法onConfigurationChanged(Configuration) ),则可以使用此方法来发现在销毁过程中发生的一组更改。 请注意,不能保证这些信息是准确的(其他变化可能随时发生),因此您只应将其用作优化提示。

Returns
int Returns a bit field of the configuration parameters that are changing, as defined by the Configuration class.

getComponentName

Added in API level 1
ComponentName getComponentName ()

返回此活动的完整组件名称。

Returns
ComponentName Returns the complete component name for this activity

getContentScene

Added in API level 21
Scene getContentScene ()

检索代表此窗口当前内容的Scene 需要FEATURE_CONTENT_TRANSITIONS

如果当前内容未由场景表示,则此方法将返回null。

Returns
Scene Current Scene being shown or null

getContentTransitionManager

Added in API level 21
TransitionManager getContentTransitionManager ()

在此窗口中检索负责默认转换的TransitionManager 需要FEATURE_CONTENT_TRANSITIONS

如果 FEATURE_CONTENT_TRANSITIONS已被授予,此方法将在内容初始化后返回非空(例如,通过使用 setContentView(View) )。

Returns
TransitionManager This window's content TransitionManager or null if none is set.

getCurrentFocus

Added in API level 1
View getCurrentFocus ()

在此活动的窗口上调用 getCurrentFocus()以返回当前聚焦的视图。

Returns
View View The current View with focus or null.

也可以看看:

getFragmentManager

Added in API level 11
FragmentManager getFragmentManager ()

返回FragmentManager以与与此活动关联的片段进行交互。

Returns
FragmentManager

getIntent

Added in API level 1
Intent getIntent ()

返回开始此活动的意图。

Returns
Intent

getLastNonConfigurationInstance

Added in API level 1
Object getLastNonConfigurationInstance ()

检索先前由onRetainNonConfigurationInstance()返回的非配置实例数据。 这将从初始的onCreate(Bundle)onStart()对新实例的调用中可用,从而允许您从前一个实例中提取任何有用的动态状态。

请注意,您在此处检索到的数据只能用作处理配置更改的优化。 您应该始终能够处理获取空指针,即使此函数返回null,活动仍必须能够将其自身恢复到之前的状态(通过正常的onSaveInstanceState(Bundle)机制)。

注意:对于大多数情况下,您应该使用Fragment API setRetainInstance(boolean) 这也可以通过Android支持库在较老的平台上使用。

Returns
Object the object previously returned by onRetainNonConfigurationInstance()

getLayoutInflater

Added in API level 1
LayoutInflater getLayoutInflater ()

方便拨打 getLayoutInflater()

Returns
LayoutInflater

getLoaderManager

Added in API level 11
LoaderManager getLoaderManager ()

为这个活动返回LoaderManager,如果需要的话创建它。

Returns
LoaderManager

getLocalClassName

Added in API level 1
String getLocalClassName ()

返回此活动的类名,并且已删除包前缀。 这是用于读取和写入设置的默认名称。

Returns
String The local class name.

getMediaController

Added in API level 21
MediaController getMediaController ()

获取当该活动处于前台时应该接收媒体密钥和音量事件的控制器。

Returns
MediaController The controller which should receive events.

也可以看看:

getMenuInflater

Added in API level 1
MenuInflater getMenuInflater ()

用这个上下文返回一个 MenuInflater

Returns
MenuInflater

getParent

Added in API level 1
Activity getParent ()

如果此视图是嵌入的子项,则返回父活动。

Returns
Activity

getParentActivityIntent

Added in API level 16
Intent getParentActivityIntent ()

获取Intent ,将启动由此活动的逻辑父项指定的显式目标活动。 逻辑父项由parentActivityName属性在应用程序清单中命名。 Activity子类可以重写此方法来修改super.getParentActivityIntent()返回的Intent,或者实现完全检索父目标的不同机制。

Returns
Intent a new Intent targeting the defined parent of this activity or null if there is no valid parent.

getPreferences

Added in API level 1
SharedPreferences getPreferences (int mode)

检索一个SharedPreferences对象,用于访问此活动专用的首选项。 这只需调用底层的getSharedPreferences(String, int)方法即可传入此活动的类getSharedPreferences(String, int)选项名称。

Parameters
mode int: Operating mode. Use MODE_PRIVATE for the default operation.
Returns
SharedPreferences Returns the single SharedPreferences instance that can be used to retrieve and modify the preference values.

getReferrer

Added in API level 22
Uri getReferrer ()

返回关于谁启动了此活动的信息。 如果启动Intent包含Intent.EXTRA_REFERRER ,则将按原样返回; 否则,如果已知,将返回包含启动Intent的包名称的android-app:引用者URI。 如果没有引用者可以被识别,这可能会返回null - 它既没有明确指定,也不知道涉及哪个应用程序包。

如果在处理onNewIntent(Intent)内部时onNewIntent(Intent) ,则此函数将返回将该新意图提交给该活动的引用者。 否则,它总是返回原始意图的引用者。

请注意,这 不是一个安全功能 - 你不能相信引用者信息,应用程序可以欺骗它。

Returns
Uri

getRequestedOrientation

Added in API level 1
int getRequestedOrientation ()

返回当前请求的活动方向。 这可以是其组件清单中所要求的方向,也可以是最后请求的setRequestedOrientation(int)方向。

Returns
int Returns an orientation constant as used in ActivityInfo.screenOrientation.

getSearchEvent

Added in API level 23
SearchEvent getSearchEvent ()

在onSearchRequested()回调期间,该函数将返回触发回调的 SearchEvent (如果存在)。

Returns
SearchEvent SearchEvent The SearchEvent that triggered the onSearchRequested() callback.

getSystemService

Added in API level 1
Object getSystemService (String name)

按名称将句柄返回到系统级服务。 返回的对象的类因所请求的名称而异。 目前可用的名称是:

WINDOW_SERVICE ("window")
The top-level window manager in which you can place custom windows. The returned object is a WindowManager.
LAYOUT_INFLATER_SERVICE ("layout_inflater")
A LayoutInflater for inflating layout resources in this context.
ACTIVITY_SERVICE ("activity")
A ActivityManager for interacting with the global activity state of the system.
POWER_SERVICE ("power")
A PowerManager for controlling power management.
ALARM_SERVICE ("alarm")
A AlarmManager for receiving intents at the time of your choosing.
NOTIFICATION_SERVICE ("notification")
A NotificationManager for informing the user of background events.
KEYGUARD_SERVICE ("keyguard")
A KeyguardManager for controlling keyguard.
LOCATION_SERVICE ("location")
A LocationManager for controlling location (e.g., GPS) updates.
SEARCH_SERVICE ("search")
A SearchManager for handling search.
VIBRATOR_SERVICE ("vibrator")
A Vibrator for interacting with the vibrator hardware.
CONNECTIVITY_SERVICE ("connection")
A ConnectivityManager for handling management of network connections.
WIFI_SERVICE ("wifi")
A WifiManager for management of Wi-Fi connectivity.
WIFI_P2P_SERVICE ("wifip2p")
A WifiP2pManager for management of Wi-Fi Direct connectivity.
INPUT_METHOD_SERVICE ("input_method")
An InputMethodManager for management of input methods.
UI_MODE_SERVICE ("uimode")
An UiModeManager for controlling UI modes.
DOWNLOAD_SERVICE ("download")
A DownloadManager for requesting HTTP downloads
BATTERY_SERVICE ("batterymanager")
A BatteryManager for managing battery state
JOB_SCHEDULER_SERVICE ("taskmanager")
A JobScheduler for managing scheduled tasks
NETWORK_STATS_SERVICE ("netstats")
A NetworkStatsManager for querying network usage statistics.
HARDWARE_PROPERTIES_SERVICE ("hardware_properties")
A HardwarePropertiesManager for accessing hardware properties.

注意:通过此API获取的系统服务可能与它们从中获取的上下文紧密相关。 一般来说,不要在各种不同的上下文(活动,应用程序,服务,提供者等)之间共享服务对象,

Parameters
name String: The name of the desired service.
Returns
Object The service or null if the name does not exist.

getTaskId

Added in API level 1
int getTaskId ()

返回此活动所在任务的标识符。此标识符在活动的生命周期中保持不变。

Returns
int Task identifier, an opaque integer.

getTitle

Added in API level 1
CharSequence getTitle ()

Returns
CharSequence

getTitleColor

Added in API level 1
int getTitleColor ()

Returns
int

getVoiceInteractor

Added in API level 23
VoiceInteractor getVoiceInteractor ()

检索用户正在通过此活动进行交互的活动 VoiceInteractor

Returns
VoiceInteractor

getVolumeControlStream

Added in API level 1
int getVolumeControlStream ()

获取建议的音频流,其音量应由硬件音量控制器更改。

Returns
int The suggested audio stream type whose volume should be changed by the hardware volume controls.

也可以看看:

getWindow

Added in API level 1
Window getWindow ()

检索当前的活动Window 这可以用来直接访问通过活动/屏幕不可用的部分Window API。

Returns
Window Window The current window, or null if the activity is not visual.

getWindowManager

Added in API level 1
WindowManager getWindowManager ()

检索用于显示自定义窗口的窗口管理器。

Returns
WindowManager

hasWindowFocus

Added in API level 3
boolean hasWindowFocus ()

如果此活动的窗口当前具有窗口焦点,则返回true。 请注意,这不同于视图本身的焦点。

Returns
boolean True if this activity's main window currently has window focus.

也可以看看:

invalidateOptionsMenu

Added in API level 11
void invalidateOptionsMenu ()

声明选项菜单已更改,因此应重新创建。 onCreateOptionsMenu(Menu)方法将在下次需要显示时调用。

isChangingConfigurations

Added in API level 11
boolean isChangingConfigurations ()

检查此活动是否处于被销毁的过程中,以便用新配置重新创建。 这通常用于onStop()以确定状态是否需要清理或将通过onRetainNonConfigurationInstance()传递给活动的下一个实例。

Returns
boolean If the activity is being torn down in order to be recreated with a new configuration, returns true; else returns false.

isChild

Added in API level 1
boolean isChild ()

此活动是否嵌入到其他活动中?

Returns
boolean

isDestroyed

Added in API level 17
boolean isDestroyed ()

如果对Activity执行了最终的 onDestroy()调用,则返回true,所以此实例现已停止。

Returns
boolean

isFinishing

Added in API level 1
boolean isFinishing ()

请检查此活动是否处于完成过程中,或者是因为您调用了finish()或其他人已请求完成此活动。 这通常用于onPause()以确定活动是暂停还是完全结束。

Returns
boolean If the activity is finishing, returns true; else returns false.

也可以看看:

isImmersive

Added in API level 18
boolean isImmersive ()

指示该活动是“沉浸式”的位,并且如果可能的话不应该被通知中断。 该值最初由清单属性android:immersive设置,但可能会在运行时由setImmersive(boolean)更改。

Returns
boolean

也可以看看:

isInMultiWindowMode

Added in API level 24
boolean isInMultiWindowMode ()

如果活动当前处于多窗口模式,则返回true。

Returns
boolean True if the activity is in multi-window mode.

也可以看看:

isInPictureInPictureMode

Added in API level 24
boolean isInPictureInPictureMode ()

如果活动当前处于画中画模式,则返回true。

Returns
boolean True if the activity is in picture-in-picture mode.

也可以看看:

isLocalVoiceInteractionSupported

Added in API level 24
boolean isLocalVoiceInteractionSupported ()

查询当前启用的语音交互服务是否支持返回语音交互者以供活动使用。 这仅在活动期间有效。

Returns
boolean whether the current voice interaction service supports local voice interaction

isTaskRoot

Added in API level 1
boolean isTaskRoot ()

返回此活动是否是任务的根源。 根是任务中的第一项活动。

Returns
boolean True if this is the root activity, else false.

isVoiceInteraction

Added in API level 23
boolean isVoiceInteraction ()

检查此活动是否作为与用户的语音交互的一部分运行。 如果属实,则应通过由VoiceInteractor返回的getVoiceInteractor()与用户进行交互。

Returns
boolean

isVoiceInteractionRoot

Added in API level 23
boolean isVoiceInteractionRoot ()

isVoiceInteraction()一样,但只有当这也是语音交互的根源时才返回true。 也就是说,如果此活动是由语音交互服务直接启动的,并且作为语音交互的发起,则返回true。 否则,例如,如果它是在语音交互时由另一活动启动的,则返回false。

Returns
boolean

managedQuery

Added in API level 1
Cursor managedQuery (Uri uri, 
                String[] projection, 
                String selection, 
                String[] selectionArgs, 
                String sortOrder)

此方法在API级别11中已弃用。
改为使用CursorLoader

包装query(android.net.Uri, String[], String, String[], String)左右,产生Cursor致电startManagingCursor(Cursor)以便该活动将为您管理其生命周期。 如果您的目标是HONEYCOMB或更高版本,请考虑改为使用LoaderManager而不要使用getLoaderManager()

警告:不要在使用此方法获取的游标上调用close() ,因为该活动将在适当的时间为您执行此操作。 但是,如果从管理查询的光标上调用stopManagingCursor(Cursor) ,系统将不会自动关闭光标,在这种情况下,您必须致电close()

Parameters
uri Uri: The URI of the content provider to query.
projection String: List of columns to return.
selection String: SQL WHERE clause.
selectionArgs String: The arguments to selection, if any ?s are pesent
sortOrder String: SQL ORDER BY clause.
Returns
Cursor The Cursor that was returned by query().

也可以看看:

moveTaskToBack

Added in API level 1
boolean moveTaskToBack (boolean nonRoot)

将包含此活动的任务移到活动堆栈的后面。 任务内的活动顺序不变。

Parameters
nonRoot boolean: If false then this only works if the activity is the root of a task; if true it will work for any activity in a task.
Returns
boolean If the task was moved (or it was already at the back) true is returned, else false.

navigateUpTo

Added in API level 16
boolean navigateUpTo (Intent upIntent)

从此活动导航到由upIntent指定的活动,在此过程中完成此活动。 如果upIntent指示的活动已经存在于任务的历史记录中,则该活动以及历史堆栈中指示的活动之前的所有其他活动将完成。

如果指定的活动未出现在历史堆栈中,则此任务将完成此任务中的每个活动,直至达到任务的根活动,导致“应用内主页”行为。 这对于具有复杂导航层次结构的应用程序非常有用,当活动可能通过未通过规范父活动的路径到达时。

在与目的地相同的任务内执行导航时应使用此方法。 如果在某些情况下向上导航应该跨越任务,请参阅shouldUpRecreateTask(Intent)

Parameters
upIntent Intent: An intent representing the target destination for up navigation
Returns
boolean true if up navigation successfully reached the activity indicated by upIntent and upIntent was delivered to it. false if an instance of the indicated activity could not be found and this activity was simply finished normally.

navigateUpToFromChild

Added in API level 16
boolean navigateUpToFromChild (Activity child, 
                Intent upIntent)

当这个小孩的活动称为navigateUpTo(Intent)方法时,这被称为。 默认实现只需在此活动(父级)上调用navigateUpTo(upIntent)。

Parameters
child Activity: The activity making the call.
upIntent Intent: An intent representing the target destination for up navigation
Returns
boolean true if up navigation successfully reached the activity indicated by upIntent and upIntent was delivered to it. false if an instance of the indicated activity could not be found and this activity was simply finished normally.

onActionModeFinished

Added in API level 11
void onActionModeFinished (ActionMode mode)

通知活动已完成动作模式。 覆盖此方法的Activity子类应调用超类实现。

Parameters
mode ActionMode: The action mode that just finished.

onActionModeStarted

Added in API level 11
void onActionModeStarted (ActionMode mode)

通知Activity该动作模式已经启动。 覆盖此方法的Activity子类应调用超类实现。

Parameters
mode ActionMode: The new action mode.

onActivityReenter

Added in API level 21
void onActivityReenter (int resultCode, 
                Intent data)

当通过活动转换启动的活动通过返回的活动转换公开此活动时,会给您提供resultCode和其中的任何其他数据。 只有在活动设置了除RESULT_CANCELED之外的结果代码并且它支持使用FEATURE_ACTIVITY_TRANSITIONS活动转换时FEATURE_ACTIVITY_TRANSITIONS调用此方法。

这个函数的目的是让被调用的Activity发送一个关于它的状态的提示,以便这个底层的Activity可以准备被暴露。 对此方法的调用并不能保证被调用的Activity已经或即将退出。 它只是表示它会公开这个活动的窗口,并且它有一些数据可以通过来准备它。

Parameters
resultCode int: The integer result code returned by the child activity through its setResult().
data Intent: An Intent, which can return result data to the caller (various data can be attached to Intent "extras").

onAttachFragment

Added in API level 11
void onAttachFragment (Fragment fragment)

当片段被附加到这个活动时,在 Fragment.onAttach()方法和 Fragment.onCreate()之前立即调用。

Parameters
fragment Fragment

onAttachedToWindow

Added in API level 5
void onAttachedToWindow ()

当与活动关联的主窗口已连接到窗口管理器时调用。 有关更多信息,请参阅View.onAttachedToWindow()

也可以看看:

onBackPressed

Added in API level 5
void onBackPressed ()

当活动检测到用户按下后退键时调用。 默认实现只是完成当前活动,但您可以覆盖它以执行任何您想要的操作。

onConfigurationChanged

Added in API level 1
void onConfigurationChanged (Configuration newConfig)

设备配置在您的活动正在运行时更改时由系统调用。 请注意, 只有在您选择的配置中您想要使用清单中的configChanges属性进行处理时才会调用此方法。 如果发生任何未被该属性选择报告的配置更改,则不会报告该系统,系统将停止并重新启动活动(使其通过新配置启动)。

在调用此函数时,您的Resources对象将被更新为返回与新配置相匹配的资源值。

Parameters
newConfig Configuration: The new device configuration.

onContentChanged

Added in API level 1
void onContentChanged ()

只要屏幕的内容视图发生变化(由于调用 Window.setContentViewWindow.addContentView )就会调用此钩子。

onContextItemSelected

Added in API level 1
boolean onContextItemSelected (MenuItem item)

只要选择了上下文菜单中的项目,就会调用该钩子。 默认实现简单地返回false以进行正常处理(调用项目的Runnable或者根据需要向其处理程序发送消息)。 您可以将此方法用于您想要在没有其他设施的情况下进行处理的任何物品。

使用 getMenuInfo()获取添加了此菜单项的视图设置的额外信息。

派生类应该调用基类来执行默认的菜单处理。

Parameters
item MenuItem: The context menu item that was selected.
Returns
boolean boolean Return false to allow normal context menu processing to proceed, true to consume it here.

onContextMenuClosed

Added in API level 1
void onContextMenuClosed (Menu menu)

只要关闭上下文菜单(通过用户使用后退/菜单按钮取消菜单或选择某个项目时),就会调用该钩子。

Parameters
menu Menu: The context menu that is being closed.

onCreate

Added in API level 21
void onCreate (Bundle savedInstanceState, 
                PersistableBundle persistentState)

onCreate(android.os.Bundle)相同,但要求使用属性 persistableMode设置为 persistAcrossReboots创建的那些活动。

Parameters
savedInstanceState Bundle: if the activity is being re-initialized after previously being shut down then this Bundle contains the data it most recently supplied in onSaveInstanceState(Bundle). Note: Otherwise it is null.
persistentState PersistableBundle: if the activity is being re-initialized after previously being shut down or powered off then this Bundle contains the data it most recently supplied to outPersistentState in onSaveInstanceState(Bundle). Note: Otherwise it is null.

也可以看看:

onCreateContextMenu

Added in API level 1
void onCreateContextMenu (ContextMenu menu, 
                View v, 
                ContextMenu.ContextMenuInfo menuInfo)

当即将显示view的上下文菜单时调用。 onCreateOptionsMenu(Menu)不同,每当即将显示上下文菜单并且应为视图(或AdapterView子视图中的AdapterView ,可在menuInfo找到该menuInfo )填充时,将AdapterViewmenuInfo )。

使用 onContextItemSelected(android.view.MenuItem)可以知道何时选择了某个项目。

在此方法返回后,保持上下文菜单是不安全的。

Parameters
menu ContextMenu: The context menu that is being built
v View: The view for which the context menu is being built
menuInfo ContextMenu.ContextMenuInfo: Extra information about the item for which the context menu should be shown. This information will vary depending on the class of v.

onCreateDescription

Added in API level 1
CharSequence onCreateDescription ()

为此活动生成新的描述。 在暂停活动之前调用此方法,并且如果需要,可以返回其当前状态的某些文本说明以显示给用户。

默认实现返回null,这会导致您继承前一个活动的描述。 如果所有活动都返回null,通常顶级活动的标签将用作描述。

Returns
CharSequence A description of what the user is doing. It should be short and sweet (only a few words).

也可以看看:

onCreateNavigateUpTaskStack

Added in API level 16
void onCreateNavigateUpTaskStack (TaskStackBuilder builder)

定义将在不同任务的向上导航期间生成的合成任务堆栈。

此方法的默认实现将清单中指定的此活动的父链添加到提供的TaskStackBuilder 应用程序可以选择重写此方法,以不同的方式构建所需的任务堆栈。

此方法将通过的默认实现调用 onNavigateUp()如果 shouldUpRecreateTask(Intent)返回true时返回的意图提供 getParentActivityIntent()

希望将额外的Intent参数提供给由清单定义的父堆栈的应用程序应覆盖 onPrepareNavigateUpTaskStack(TaskStackBuilder)

Parameters
builder TaskStackBuilder: An empty TaskStackBuilder - the application should add intents representing the desired task stack

onCreateOptionsMenu

Added in API level 1
boolean onCreateOptionsMenu (Menu menu)

初始化活动标准选项菜单的内容。 您应该将菜单项放入菜单中

这仅在第一次显示选项菜单时调用一次。 每次显示菜单时都要更新菜单,请参阅onPrepareOptionsMenu(Menu)

默认实现用标准系统菜单项填充菜单。 这些被放置在CATEGORY_SYSTEM组中,以便它们将正确地与应用程序定义的菜单项一起排序。 派生类应始终调用基本实现。

您可以放心地按住 菜单 (以及从中创建的任何项目),根据需要对其进行修改,直到下次调用onCreateOptionsMenu()。

当您将项目添加到菜单中时,您可以实施“活动”的 onOptionsItemSelected(MenuItem)方法来在那里处理它们。

Parameters
menu Menu: The options menu in which you place your items.
Returns
boolean You must return true for the menu to be displayed; if you return false it will not be shown.

也可以看看:

onCreatePanelMenu

Added in API level 1
boolean onCreatePanelMenu (int featureId, 
                Menu menu)

活动的默认实现onCreatePanelMenu(int, Menu) 这就要求通过新onCreateOptionsMenu(Menu)的方法FEATURE_OPTIONS_PANEL面板,使活动的子类不需要处理功能代码。

Parameters
featureId int: The panel being created.
menu Menu: The menu inside the panel.
Returns
boolean boolean You must return true for the panel to be displayed; if you return false it will not be shown.

onCreatePanelView

Added in API level 1
View onCreatePanelView (int featureId)

活动的默认实现为onCreatePanelView(int) 这只是返回null,以便所有面板子窗口将具有默认的菜单行为。

Parameters
featureId int: Which panel is being created.
Returns
View view The top-level view to place in the panel.

onCreateThumbnail

Added in API level 1
boolean onCreateThumbnail (Bitmap outBitmap, 
                Canvas canvas)

为此活动生成一个新的缩略图。 在暂停活动之前调用此方法,并应该在该位图的维度中将所需缩略图的图像绘制到outBitmap中 如果需要,它可以使用给定的画布 ,该画布被配置为绘制到位图中。

默认实现返回失败并且不绘制缩略图; 这将导致平台在需要时创建自己的缩略图。

Parameters
outBitmap Bitmap: The bitmap to contain the thumbnail.
canvas Canvas: Can be used to render into the bitmap.
Returns
boolean Return true if you have drawn into the bitmap; otherwise after you return it will be filled with a default thumbnail.

也可以看看:

onCreateView

Added in API level 11
View onCreateView (View parent, 
                String name, 
                Context context, 
                AttributeSet attrs)

标准实施onCreateView(View, String, Context, AttributeSet)与返回的LayoutInflater充气时使用getSystemService(Class ) 这个实现处理 标签将片段嵌入到活动中。

Parameters
parent View: The parent that the created view will be placed in; note that this may be null.
name String: Tag name to be inflated.
context Context: The context the view is being created in.
attrs AttributeSet: Inflation attributes as specified in XML file.
Returns
View View Newly created view. Return null for the default behavior.

也可以看看:

onCreateView

Added in API level 1
View onCreateView (String name, 
                Context context, 
                AttributeSet attrs)

标准实施onCreateView(String, Context, AttributeSet)与返回的LayoutInflater充气时使用getSystemService(Class ) 此实施HONEYCOMB适用于HONEYCOMB应用程序。 较新的应用程序应该使用onCreateView(View, String, Context, AttributeSet)

Parameters
name String: Tag name to be inflated.
context Context: The context the view is being created in.
attrs AttributeSet: Inflation attributes as specified in XML file.
Returns
View View Newly created view. Return null for the default behavior.

也可以看看:

onDetachedFromWindow

Added in API level 5
void onDetachedFromWindow ()

当与活动关联的主窗口已从窗口管理器中分离时调用。 有关更多信息,请参阅View.onDetachedFromWindow()

也可以看看:

onEnterAnimationComplete

Added in API level 21
void onEnterAnimationComplete ()

活动在它们的窗口进行动画处理期间不能绘制。为了知道何时开始绘制是安全的,它们可以覆盖此方法,该方法将在输入动画完成时调用。

onGenericMotionEvent

Added in API level 12
boolean onGenericMotionEvent (MotionEvent event)

当一个普通的运动事件没有被任何活动内部的视图处理时调用。

通用运动事件描述操纵杆运动,鼠标悬停,触控板触摸,滚轮运动和其他输入事件。 运动事件的source指定接收的输入类别。 此方法的实现必须在处理事件之前检查源中的位。 以下代码示例显示了这是如何完成的。

带有源类SOURCE_CLASS_POINTER通用运动事件传递到指针下的视图。 所有其他通用运动事件都会传送到重点视图。

有关如何处理此事件的示例,请参阅 onGenericMotionEvent(MotionEvent)

Parameters
event MotionEvent: The generic motion event being processed.
Returns
boolean Return true if you have consumed the event, false if you haven't. The default implementation always returns false.

onKeyDown

Added in API level 1
boolean onKeyDown (int keyCode, 
                KeyEvent event)

当按下某个键并且不被任何活动内部的视图处理时调用。 因此,例如,当光标在TextView中时按下键将不会触发事件(除非它是另一个对象的导航),因为TextView处理它自己的按键。

如果重点视图不想要这个事件,则调用此方法。

默认实现通过调用KEYCODE_BACK来调用onBackPressed() ,尽管行为因应用程序兼容性模式而异:对于ECLAIR或更高版本的应用程序,它将设置调度以调用onKeyUp(int, KeyEvent)执行操作; 对于早期的应用程序,它将立即在on-down中执行该操作,因为这些平台的版本表现得很好。

如果配置了 setDefaultKeyMode(int)则可以执行其他附加的默认密钥处理。

Parameters
keyCode int: The value in event.getKeyCode().
event KeyEvent: Description of the key event.
Returns
boolean Return true to prevent this event from being propagated further, or false to indicate that you have not handled this event and it should continue to be propagated.

也可以看看:

onKeyLongPress

Added in API level 5
boolean onKeyLongPress (int keyCode, 
                KeyEvent event)

默认实现 KeyEvent.Callback.onKeyLongPress() :始终返回false(不处理事件)。

Parameters
keyCode int: The value in event.getKeyCode().
event KeyEvent: Description of the key event.
Returns
boolean If you handled the event, return true. If you want to allow the event to be handled by the next receiver, return false.

onKeyMultiple

Added in API level 1
boolean onKeyMultiple (int keyCode, 
                int repeatCount, 
                KeyEvent event)

默认实现 KeyEvent.Callback.onKeyMultiple() :始终返回false(不处理事件)。

Parameters
keyCode int: The value in event.getKeyCode().
repeatCount int: Number of pairs as returned by event.getRepeatCount().
event KeyEvent: Description of the key event.
Returns
boolean If you handled the event, return true. If you want to allow the event to be handled by the next receiver, return false.

onKeyShortcut

Added in API level 11
boolean onKeyShortcut (int keyCode, 
                KeyEvent event)

在“活动”中的任何视图未处理键快捷方式事件时调用。 重写此方法以实现活动的全局快捷键。 快捷键也可以通过设置菜单项的shortcut属性来实现。

Parameters
keyCode int: The value in event.getKeyCode().
event KeyEvent: Description of the key event.
Returns
boolean True if the key shortcut was handled.

onKeyUp

Added in API level 1
boolean onKeyUp (int keyCode, 
                KeyEvent event)

当密钥被释放并且不被任何活动内部的视图处理时调用。 因此,例如,当光标在TextView中时按下键将不会触发事件(除非它是另一个对象的导航),因为TextView处理它自己的按键。

默认实现处理KEYCODE_BACK来停止活动并返回。

Parameters
keyCode int: The value in event.getKeyCode().
event KeyEvent: Description of the key event.
Returns
boolean Return true to prevent this event from being propagated further, or false to indicate that you have not handled this event and it should continue to be propagated.

也可以看看:

onLocalVoiceInteractionStarted

Added in API level 24
void onLocalVoiceInteractionStarted ()

回调表明startLocalVoiceInteraction(Bundle)已导致语音交互会话正在启动。 您现在可以使用getVoiceInteractor()检索语音交互器。

onLocalVoiceInteractionStopped

Added in API level 24
void onLocalVoiceInteractionStopped ()

回叫表示本地语音交互已停止,因为它是通过调用stopLocalVoiceInteraction()请求的,或者是由用户取消的。 此前获得的VoiceInteractor不再有效。

onLowMemory

Added in API level 1
void onLowMemory ()

这在整个系统内存不足时调用,并且主动运行的进程应该修剪内存使用情况。 虽然没有定义它的确切位置,但通常会在所有后台进程都被终止时发生。 也就是说,在达到托管服务和前台UI的杀死进程之前,我们希望避免杀死。

你应该实现这个方法来释放你可能持有的任何缓存或其他不必要的资源。 系统将从此方法返回后为您执行垃圾回收。

优选地,您应该从ComponentCallbacks2实施onTrimMemory(int) ,以基于不同级别的内存需求逐步卸载资源。 该API可用于API级别14和更高的,所以你应该只使用这个onLowMemory()方法,旧版本的回退,可以治疗一样onTrimMemory(int)TRIM_MEMORY_COMPLETE水平。

onMenuItemSelected

Added in API level 1
boolean onMenuItemSelected (int featureId, 
                MenuItem item)

活动的默认实现onMenuItemSelected(int, MenuItem) 这就要求通过新onOptionsItemSelected(MenuItem)的方法FEATURE_OPTIONS_PANEL面板,使活动的子类不需要处理功能代码。

Parameters
featureId int: The panel that the menu is in.
item MenuItem: The menu item that was selected.
Returns
boolean boolean Return true to finish processing of selection, or false to perform the normal menu handling (calling its Runnable or sending a Message to its target Handler).

onMenuOpened

Added in API level 1
boolean onMenuOpened (int featureId, 
                Menu menu)

用户打开面板菜单时调用。 当菜单从一种类型更改为另一种时(例如,从图标菜单变为扩展菜单),也可能会调用此功能。

Parameters
featureId int: The panel that the menu is in.
menu Menu: The menu that is opened.
Returns
boolean The default implementation returns true.

onMultiWindowModeChanged

Added in API level 24
void onMultiWindowModeChanged (boolean isInMultiWindowMode)

当活动从全屏模式更改为多窗口模式时,由系统调用,反之亦然。

Parameters
isInMultiWindowMode boolean: True if the activity is in multi-window mode.

也可以看看:

onNavigateUp

Added in API level 16
boolean onNavigateUp ()

只要用户选择在应用程序的活动层次结构中从操作栏中向上导航,就会调用此方法。

如果在此活动的清单或其活动别名中指定了属性parentActivityName ,则默认的Up导航将自动处理。 如果父链上的任何活动需要额外的Intent参数,则Activity子类应重写方法onPrepareNavigateUpTaskStack(TaskStackBuilder)以提供这些参数。

Tasks and Back Stack从开发者指南和 Navigation从设计指南有关应用程序内浏览更多信息。

TaskStackBuilder类和活性的方法getParentActivityIntent()shouldUpRecreateTask(Intent) ,并navigateUpTo(Intent)求助实现自定义向上导航。 Android SDK中的AppNavigation示例应用程序也可供参考。

Returns
boolean true if Up navigation completed successfully and this Activity was finished, false otherwise.

onNavigateUpFromChild

Added in API level 16
boolean onNavigateUpFromChild (Activity child)

这是在这个人的小孩活动尝试向上导航时调用的。 默认实现只需在此活动(父级)上调用onNavigateUp()。

Parameters
child Activity: The activity making the call.
Returns
boolean

onOptionsItemSelected

Added in API level 1
boolean onOptionsItemSelected (MenuItem item)

只要选择了选项菜单中的项目,就会调用该钩子。 默认实现简单地返回false以进行正常处理(调用项目的Runnable或者根据需要向其处理程序发送消息)。 您可以将此方法用于您想要在没有其他设施的情况下进行处理的任何物品。

派生类应该调用基类来执行默认的菜单处理。

Parameters
item MenuItem: The menu item that was selected.
Returns
boolean boolean Return false to allow normal menu processing to proceed, true to consume it here.

也可以看看:

onOptionsMenuClosed

Added in API level 1
void onOptionsMenuClosed (Menu menu)

只要选项菜单被关闭(通过用户使用后退/菜单按钮取消菜单,或选择某个项目时),就会调用该钩子。

Parameters
menu Menu: The options menu as last shown or first initialized by onCreateOptionsMenu().

onPanelClosed

Added in API level 1
void onPanelClosed (int featureId, 
                Menu menu)

活动的默认实现onPanelClosed(int, Menu) 这需要通过对onOptionsMenuClosed(Menu)的方法FEATURE_OPTIONS_PANEL面板,使活动的子类不需要处理功能代码。 对于上下文菜单( FEATURE_CONTEXT_MENU ),将调用onContextMenuClosed(Menu)

Parameters
featureId int: The panel that is being displayed.
menu Menu: If onCreatePanelView() returned null, this is the Menu being displayed in the panel.

onPictureInPictureModeChanged

Added in API level 24
void onPictureInPictureModeChanged (boolean isInPictureInPictureMode)

当活动从画中画模式切换到画中画模式时由系统调用。

Parameters
isInPictureInPictureMode boolean: True if the activity is in picture-in-picture mode.

也可以看看:

onPostCreate

Added in API level 21
void onPostCreate (Bundle savedInstanceState, 
                PersistableBundle persistentState)

这与 onPostCreate(Bundle)相同,但是对于使用属性 persistableMode设置为 persistAcrossReboots创建的活动来说,这是要求的。

Parameters
savedInstanceState Bundle: The data most recently supplied in onSaveInstanceState(Bundle)
persistentState PersistableBundle: The data caming from the PersistableBundle first saved in onSaveInstanceState(Bundle, PersistableBundle).

也可以看看:

onPrepareNavigateUpTaskStack

Added in API level 16
void onPrepareNavigateUpTaskStack (TaskStackBuilder builder)

准备将从不同任务的Up导航过程中生成的合成任务堆栈。

该方法接收TaskStackBuilder ,其具有由onCreateNavigateUpTaskStack(TaskStackBuilder)生成的构建的一系列意图。 如果在启动新任务之前应将任何额外数据添加到这些意向中,则应用程序应覆盖此方法并在此处添加该数据。

Parameters
builder TaskStackBuilder: A TaskStackBuilder that has been populated with Intents by onCreateNavigateUpTaskStack.

onPrepareOptionsMenu

Added in API level 1
boolean onPrepareOptionsMenu (Menu menu)

准备显示屏幕的标准选项菜单。 在菜单显示之前,每当显示菜单时都会调用它。 您可以使用此方法高效地启用/禁用项目或以其他方式动态修改内容。

默认实现基于活动状态更新系统菜单项。 派生类应始终调用基类实现。

Parameters
menu Menu: The options menu as last shown or first initialized by onCreateOptionsMenu().
Returns
boolean You must return true for the menu to be displayed; if you return false it will not be shown.

也可以看看:

onPreparePanel

Added in API level 1
boolean onPreparePanel (int featureId, 
                View view, 
                Menu menu)

活动的默认实现为onPreparePanel(int, View, Menu) 这就要求通过新onPrepareOptionsMenu(Menu)的方法FEATURE_OPTIONS_PANEL面板,使活动的子类不需要处理功能代码。

Parameters
featureId int: The panel that is being displayed.
view View: The View that was returned by onCreatePanelView().
menu Menu: If onCreatePanelView() returned null, this is the Menu being displayed in the panel.
Returns
boolean boolean You must return true for the panel to be displayed; if you return false it will not be shown.

onProvideAssistContent

Added in API level 23
void onProvideAssistContent (AssistContent outContent)

这在用户请求协助时被调用,以提供与当前活动相关的内容的参考。 在被调用之前, outContent意图充满活动的基本意图(由getIntent()返回的getIntent() )。 Intent的附加内容除去了对PersistableBundle或非框架PersistableBundle无效的任何类型,并且从意图中清除了标志FLAG_GRANT_WRITE_URI_PERMISSIONFLAG_GRANT_PERSISTABLE_URI_PERMISSION

自定义实现可能会调整内容意图以更好地反映活动的顶级上下文,并在其ClipData中填入用户当前正在查看的其他感兴趣内容。 例如,一个图像库应用程序启动了一个允许用户在图片中滑动的活动,该应用程序应该修改引用他们正在查看的当前图像的意图; 这样的应用程序在显示图片列表时应该添加一个ClipData,该ClipData引用了当前屏幕上可见的所有图片。

Parameters
outContent AssistContent: The assist content to return.

onProvideAssistData

Added in API level 18
void onProvideAssistData (Bundle data)

这在用户请求辅助时调用,用当前应用程序的所有上下文构建完整的ACTION_ASSIST意图。 您可以重写此方法以将任何您希望出现在协助意图的EXTRA_ASSIST_CONTEXT部分中的任何内容放入该包中。

Application.registerOnProvideAssistDataListener注册的全局辅助回调之后,将会调用该函数。

Parameters
data Bundle

onProvideKeyboardShortcuts

void onProvideKeyboardShortcuts (List<KeyboardShortcutGroup> data, 
                Menu menu, 
                int deviceId)

在当前窗口请求键盘快捷键时调用。

Parameters
data List: The data list to populate with shortcuts.
menu Menu: The current menu, which may be null.
deviceId int: The id for the connected device the shortcuts should be provided for.

onProvideReferrer

Added in API level 23
Uri onProvideReferrer ()

覆盖,为应用目前显示的内容生成所需的引荐来源。 默认实现返回null,这意味着引用者将只是这个活动的包名称的android-app:。 返回一个非null的Uri,以EXTRA_REFERRER开始的任何活动。

Returns
Uri

onRequestPermissionsResult

Added in API level 23
void onRequestPermissionsResult (int requestCode, 
                String[] permissions, 
                int[] grantResults)

从请求权限回调结果。 每次调用requestPermissions(String[], int)都会调用此方法。

注意:与用户的权限请求交互可能会中断。 在这种情况下,您将收到空权限和结果数组,这些数据应视为取消。

Parameters
requestCode int: The request code passed in requestPermissions(String[], int).
permissions String: The requested permissions. Never null.
grantResults int: The grant results for the corresponding permissions which is either PERMISSION_GRANTED or PERMISSION_DENIED. Never null.

也可以看看:

onRestoreInstanceState

Added in API level 21
void onRestoreInstanceState (Bundle savedInstanceState, 
                PersistableBundle persistentState)

这与onRestoreInstanceState(Bundle)相同,但对于使用属性persistableMode设置为persistAcrossReboots创建的活动persistableMode将被persistAcrossReboots PersistableBundle通过从onSaveInstanceState(Bundle, PersistableBundle)首先保存的恢复PersistableBundle onSaveInstanceState(Bundle, PersistableBundle)

此方法在 onStart()onPostCreate(Bundle)之间 onPostCreate(Bundle)

如果调用此方法 onRestoreInstanceState(Bundle)将不会被调用。

Parameters
savedInstanceState Bundle: the data most recently supplied in onSaveInstanceState(Bundle).
persistentState PersistableBundle: the data most recently supplied in onSaveInstanceState(Bundle).

也可以看看:

onRetainNonConfigurationInstance

Added in API level 1
Object onRetainNonConfigurationInstance ()

由系统调用,作为销毁由于配置更改而导致的活动的一部分,当知道将立即为新配置创建新实例时。 您可以返回您喜欢的任何对象,包括活动实例本身,稍后可以通过在新活动实例中调用getLastNonConfigurationInstance()来检索它。 如果您的目标是HONEYCOMB或更高版本,请考虑使用FragmentFragment.setRetainInstance(boolean

这个函数纯粹被称为优化,你不能依赖它被调用。 当它被调用时,会做出一些保证来帮助优化配置切换:

  • The function will be called between onStop() and onDestroy().
  • A new instance of the activity will always be immediately created after this one's onDestroy() is called. In particular, no messages will be dispatched during this time (when the returned object does not have an activity to be associated with).
  • The object you return here will always be available from the getLastNonConfigurationInstance() method of the following activity instance as described there.

这些保证旨在使活动可以使用此API将广泛的状态从旧活动传播到新活动实例,从加载的位图传播到网络连接,以平均主动运行线程。 请注意,你应该传播可能改变基于配置的任何数据,包括从资源加载,如字符串,布局,或可绘任何数据。

在切换到下一个活动期间保证没有消息处理,简化了与活动对象的使用。 例如,如果您的保留状态是AsyncTask ,则保证其回调函数(如onPostExecute(Result) )不会从此处调用,直到执行下一个实例的onCreate(Bundle) (但是请注意,当然doInBackground(Params...)没有这样的保证,因为它在单独的线程中运行。)

注意:对于大多数情况,您应该使用Fragment API setRetainInstance(boolean)代替; 这也可以通过Android支持库在较老的平台上使用。

Returns
Object any Object holding the desired state to propagate to the next activity instance

onSaveInstanceState

Added in API level 21
void onSaveInstanceState (Bundle outState, 
                PersistableBundle outPersistentState)

这与onSaveInstanceState(Bundle)相同,但对于使用属性persistableMode设置为persistAcrossReboots创建的活动persistableMode将被persistAcrossReboots 传入的PersistableBundle将在第一次在onCreate(Bundle, PersistableBundle)保存并在下次重启设备后重新启动此活动。

Parameters
outState Bundle: Bundle in which to place your saved state.
outPersistentState PersistableBundle: State which will be saved across reboots.

也可以看看:

onSearchRequested

Added in API level 23
boolean onSearchRequested (SearchEvent searchEvent)

当用户发出开始搜索的愿望时,这个钩子被调用。

您可以使用此功能作为启动搜索UI的简单方式,以响应您的活动中的菜单项,搜索按钮或其他小部件。 除非超载,否则调用此函数与调用startSearch(null, false, null, false)相同,该函数按其清单中指定的方式启动对当前活动的搜索,请参阅SearchManager

您可以重写此函数以强制进行全局搜索,例如响应专用搜索关键字,或者完全阻止搜索(仅通过返回false)。

注意:在 UI_MODE_TYPE_TELEVISION运行时,默认实现更改为仅返回false,并且如果您要支持搜索,则必须提供自己的自定义实现。

Parameters
searchEvent SearchEvent: The SearchEvent that signaled this search.
Returns
boolean Returns true if search launched, and false if the activity does not respond to search. The default implementation always returns true, except when in UI_MODE_TYPE_TELEVISION mode where it returns false.

也可以看看:

onSearchRequested

Added in API level 1
boolean onSearchRequested ()

当用户指示开始搜索的愿望时调用。

Returns
boolean true if search launched, false if activity refuses (blocks)

也可以看看:

onStateNotSaved

Added in API level 23
void onStateNotSaved ()

onResume()即将到来时,在onNewIntent(Intent)onActivityResult(int, int, Intent)等其他预先恢复回调之前调用。 这主要是为了给活动一个暗示其状态不再被保存的暗示 - 通常在onSaveInstanceState(Bundle)之后并且在活动被重新开始/重新开始之前调用它。

onTouchEvent

Added in API level 1
boolean onTouchEvent (MotionEvent event)

当触摸屏事件未被其下的任何视图处理时调用。 这对于处理发生在窗口范围之外的触摸事件非常有用,在那里没有接收它的视图。

Parameters
event MotionEvent: The touch screen event being processed.
Returns
boolean Return true if you have consumed the event, false if you haven't. The default implementation always returns false.

onTrackballEvent

Added in API level 1
boolean onTrackballEvent (MotionEvent event)

当轨迹球被移动并且不被任何活动内部的视图处理时调用。 因此,例如,如果轨迹球在焦点位于按钮上时移动,您将在此处接到呼叫,因为按钮通常不会对轨迹球事件做任何事情。 这里的调用发生轨迹球移动转换为DPAD关键事件之前,然后发送回视图层次结构,并在焦点导航等事件处理。

Parameters
event MotionEvent: The trackball event being processed.
Returns
boolean Return true if you have consumed the event, false if you haven't. The default implementation always returns false.

onTrimMemory

Added in API level 14
void onTrimMemory (int level)

当操作系统确定进程从其进程中删除不需要的内存是一个好时机时调用。 例如,当它进入后台并且没有足够的内存来保持尽可能多的后台进程运行时,会发生这种情况。 您不应该与级别的确切值进行比较,因为可能会添加新的中间值 - 如果值大于或等于您感兴趣的级别,通常需要比较。

要在任何点检索处理当前的修剪水平,可以使用 ActivityManager.getMyMemoryState(RunningAppProcessInfo)

Parameters
level int: The context of the trim, giving a hint of the amount of trimming the application may like to perform. May be TRIM_MEMORY_COMPLETE, TRIM_MEMORY_MODERATE, TRIM_MEMORY_BACKGROUND, TRIM_MEMORY_UI_HIDDEN, TRIM_MEMORY_RUNNING_CRITICAL, TRIM_MEMORY_RUNNING_LOW, or TRIM_MEMORY_RUNNING_MODERATE.

onUserInteraction

Added in API level 3
void onUserInteraction ()

每当键,触摸或轨迹球事件被分派到活动时调用。 如果您希望知道用户在您的活动正在运行时以某种方式与设备进行了交互,请实施此方法。 此回调和onUserLeaveHint()旨在帮助活动智能地管理状态栏通知; 特别是帮助活动确定取消通知的适当时间。

所有致电您的活动onUserLeaveHint()回调的电话将伴随着致电onUserInteraction() 这可以确保您的活动会被告知相关的用户活动,例如拉下通知窗格并触摸其中的项目。

请注意,此回调将针对开始触摸手势的触按操作进行调用,但可能不会为随后的触摸移动和修改操作调用此回调。

也可以看看:

onVisibleBehindCanceled

Added in API level 21
void onVisibleBehindCanceled ()

当对此活动的半透明活动变得不透明或正在启动其他活动时调用。 重写此方法的活动必须调用super.onVisibleBehindCanceled() ,否则将引发SuperNotCalledException。

当这个方法被调用时,活动有500毫秒来释放它在后台可见的时候正在使用的资源。 如果活动在500毫秒内未从此方法返回,系统将销毁活动并终止进程以便为另一个进程恢复资源。 否则onStop()将在退货onStop()调用。

也可以看看:

onWindowAttributesChanged

Added in API level 1
void onWindowAttributesChanged (WindowManager.LayoutParams params)

这在每当当前窗口属性改变时被调用。

Parameters
params WindowManager.LayoutParams

onWindowFocusChanged

Added in API level 1
void onWindowFocusChanged (boolean hasFocus)

当目前Window的活动获得或失去焦点时调用。 这是此活动是否对用户可见的最佳指标。 默认实现会清除密钥跟踪状态,因此应该始终调用。

请注意,这提供了有关全局焦点状态的信息,该状态与活动生命周期无关地进行管理。 因此,虽然重点更改通常与生命周期更改有关(停止的活动通常不会获得窗口焦点),但您不应该依赖此处回调和其他生命周期方法中的回调之间的任何特定顺序,例如onResume()

然而,作为一般规则,恢复的活动将具有窗口焦点...除非它已显示其他对话框或弹出窗口来输入焦点,在这种情况下,当其他窗口具有焦点时,活动本身将不具有焦点。 同样,系统可能会显示系统级别的窗口(例如状态栏通知面板或系统警报),该窗口将临时采用窗口输入焦点,而不会暂停前台活动。

Parameters
hasFocus boolean: Whether the window of this activity has focus.

也可以看看:

onWindowStartingActionMode

Added in API level 23
ActionMode onWindowStartingActionMode (ActionMode.Callback callback, 
                int type)

当此窗口的动作模式正在启动时调用。 给回调提供了一个机会,以自己独特而美丽的方式处理动作模式。 如果此方法返回null,则系统可以选择一种呈现模式的方式或根本不选择启动模式。

Parameters
callback ActionMode.Callback: Callback to control the lifecycle of this action mode
type int: One of TYPE_PRIMARY or TYPE_FLOATING.
Returns
ActionMode The ActionMode that was started, or null if the system should present it

onWindowStartingActionMode

Added in API level 11
ActionMode onWindowStartingActionMode (ActionMode.Callback callback)

为活动提供一个控制系统请求的操作模式的UI的机会。

注意:如果您正在寻找通知回调,表示此活动的操作模式已启动,请参阅 onActionModeStarted(ActionMode)

Parameters
callback ActionMode.Callback: The callback that should control the new action mode
Returns
ActionMode The new action mode, or null if the activity does not want to provide special handling for this action mode. (It will be handled by the system.)

openContextMenu

Added in API level 1
void openContextMenu (View view)

以编程方式打开特定view的上下文菜单。 view应该已经通过registerForContextMenu(View)加入。

Parameters
view View: The view to show the context menu for.

openOptionsMenu

Added in API level 1
void openOptionsMenu ()

以编程方式打开选项菜单。 如果选项菜单已经打开,该方法什么都不做。

overridePendingTransition

Added in API level 5
void overridePendingTransition (int enterAnim, 
                int exitAnim)

startActivity(Intent)finish()之一的风味之后立即调用以指定明确的过渡动画以执行下一步。

JELLY_BEAN开始,将其用于启动活动的一种替代方法是通过ActivityOptions套件向{@link #startActivity(Intent,Bundle)或相关函数提供所需的动画信息。 这允许您指定自定义动画,即使从当前顶级活动的上下文之外开始活动也是如此。

Parameters
enterAnim int: A resource ID of the animation resource to use for the incoming activity. Use 0 for no animation.
exitAnim int: A resource ID of the animation resource to use for the outgoing activity. Use 0 for no animation.

postponeEnterTransition

Added in API level 21
void postponeEnterTransition ()

当Activity开始于 makeSceneTransitionAnimation(Activity, android.util.Pair[])时,推迟进入活动转换。

该方法使Activity能够延迟启动进入和共享元素转换,直到加载所有数据。 在此之前,活动不会吸入窗口,使窗口保持透明。 这也可能导致返回的动画被延迟,直到数据准备就绪。 此方法应在onCreate(android.os.Bundle)onActivityReenter(int, android.content.Intent)onActivityReenter(int, android.content.Intent) 必须调用startPostponedEnterTransition()以允许活动启动转换。 如果Activity没有使用makeSceneTransitionAnimation(Activity, android.util.Pair[]) ,那么这个方法什么都不做。

recreate

Added in API level 11
void recreate ()

导致使用新实例重新创建此活动。 这导致与由于配置更改而创建活动时的流程基本相同 - 当前实例将经历其生命周期到onDestroy() ,然后在其后创建新实例。

registerForContextMenu

Added in API level 1
void registerForContextMenu (View view)

为给定视图注册一个上下文菜单(多个视图可以显示上下文菜单)。 此方法会将视图上的View.OnCreateContextMenuListener设置为此活动,因此将在显示上下文菜单时调用onCreateContextMenu(ContextMenu, View, ContextMenuInfo)

Parameters
view View: The view that should show a context menu.

也可以看看:

releaseInstance

Added in API level 21
boolean releaseInstance ()

请求释放本活动的本地应用程序实例以释放其内存。 这是要求活动被销毁,但没有完成活动 - 活动的新实例稍后将由于用户导航返回而需要时重新创建。

Returns
boolean Returns true if the activity was in a state that it has started the process of destroying its current instance; returns false if for any reason this could not be done: it is currently visible to the user, it is already being destroyed, it is being finished, it hasn't yet saved its state, etc.

removeDialog

Added in API level 1
void removeDialog (int id)

此方法在API级别13中已被弃用。
改为使用新的DialogFragment类与FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

删除由此Activity管理的对话框的所有内部引用。 如果显示对话框,则会将其作为清理的一部分予以解雇。

如果您知道永远不会再显示对话框,并且希望避免将来保存和恢复的开销,这会非常有用。

GINGERBREAD ,如果尝试删除当前没有关联对话框的ID,则此函数不会引发异常。

Parameters
id int: The id of the managed dialog.

也可以看看:

reportFullyDrawn

Added in API level 19
void reportFullyDrawn ()

向系统报告您的应用程序现在已完全绘制,纯粹用于诊断目的(称其不会影响活动的可见行为)。 这仅用于帮助仪器应用程序启动时间,以便应用程序可以在完全处于可用状态时进行报告; 没有这些,系统本身可以确定的唯一事情就是活动窗口首先绘制和显示的点。 要参与应用程序启动时间测量,在第一次启动后(当onCreate(android.os.Bundle)时),应始终调用此方法,此时您已完全绘制了UI并填充了所有重要数据。 您可以在第一次启动后随时调用此方法,在这种情况下,它将被忽略。

requestDragAndDropPermissions

Added in API level 24
DragAndDropPermissions requestDragAndDropPermissions (DragEvent event)

创建 DragAndDropPermissions对象绑定到这个活动,并控制了与相关内容的URI的访问权限 DragEvent

Parameters
event DragEvent: Drag event
Returns
DragAndDropPermissions The DragAndDropPermissions object used to control access to the content URIs. Null if no content URIs are associated with the event or if permissions could not be granted.

requestPermissions

Added in API level 23
void requestPermissions (String[] permissions, 
                int requestCode)

请求授予此应用程序的权限。 这些权限必须在您的清单中请求,它们不应被授予您的应用程序,并且它们应具有保护级别#PROTECTION_DANGEROUS dangerous ,而不管它们是由平台还是由第三方应用程序声明。

正常权限PROTECTION_NORMAL在安装时根据清单中的请求被授予。 签名权限PROTECTION_SIGNATURE在安装时根据清单中的请求被授予,并且您的应用的签名与声明权限的应用的签名匹配。

如果您的应用程序没有请求的权限,用户将看到用户界面接受它们。 在用户接受或拒绝所请求的权限后,您将收到onRequestPermissionsResult(int, String[], int[])报告onRequestPermissionsResult(int, String[], int[])权限是否被授予的回调。

请注意,请求权限并不能保证它将被授予,并且您的应用程序应该能够在没有此权限的情况下运行。

此方法可能会启动一项活动,允许用户选择授予哪些权限以及拒绝哪些权限。 因此,您应该准备好您的活动可能会暂停并恢复。 此外,授予某些权限可能需要重新启动应用程序。 在这种情况下,系统会在将结果发送到onRequestPermissionsResult(int, String[], int[])之前重新创建活动堆栈。

在检查您是否有权 checkSelfPermission(String)您应该使用 checkSelfPermission(String)

调用此API以获得已授予您的应用程序的权限将向用户显示UI,以决定应用程序是否仍可拥有这些权限。 如果您的应用程序使用受权限保护的数据的方式发生显着变化,这会非常有用。

如果你的活动设置,您不能要求一个权限 noHistorytrue ,因为在这种情况下活动不会接受结果的回调,包括 onRequestPermissionsResult(int, String[], int[])

RuntimePermissions示例应用程序演示了如何使用此方法在运行时请求权限。

Parameters
permissions String: The requested permissions. Must me non-null and not empty.
requestCode int: Application specific request code to match with a result reported to onRequestPermissionsResult(int, String[], int[]). Should be >= 0.

也可以看看:

requestShowKeyboardShortcuts

Added in API level 24
void requestShowKeyboardShortcuts ()

请求键盘快捷方式屏幕出现。 这将触发onProvideKeyboardShortcuts(List , Menu, int) 检索前台活动的快捷方式。

requestVisibleBehind

Added in API level 21
boolean requestVisibleBehind (boolean visible)

希望保持可见上面摆着一个半透明的背后活动活动必须随时打电话的开始之间的这种方法onResume() ,并从返回onPause() 如果此通话成功,则在调用onPause()后,该活动将保持可见onPause() ,并允许在后台继续播放媒体。

每次将此活动置于最前面时,都会重置此调用的操作。 也就是说,每次调用onResume() ,活动将被假定为没有请求可见。 因此,如果您希望此活动在后台继续显示,则必须再次调用此方法。

只有全屏幕不透明的活动才能进行此调用。 即这个电话是对话和半透明活动的一部分。

在任何情况下,该活动必须在致电 onVisibleBehindCanceled()之前或之内停止播放和释放资源,或者此呼叫返回错误。

在返回onPause和下一次调用onResume之间调用此方法时,将返回False。

Parameters
visible boolean: true to notify the system that the activity wishes to be visible behind other translucent activities, false to indicate otherwise. Resources must be released when passing false to this method.
Returns
boolean the resulting visibiity state. If true the activity will remain visible beyond onPause() if the next activity is translucent or not fullscreen. If false then the activity may not count on being visible behind other translucent activities, and must stop any media playback and release resources. Returning false may occur in lieu of a call to onVisibleBehindCanceled() so the return value must be checked.

也可以看看:

requestWindowFeature

Added in API level 1
boolean requestWindowFeature (int featureId)

启用扩展窗口功能。 这是拨打getWindow().requestFeature()的便利getWindow().requestFeature()

Parameters
featureId int: The desired feature as defined in Window.
Returns
boolean Returns true if the requested feature is supported and now enabled.

也可以看看:

runOnUiThread

Added in API level 1
void runOnUiThread (Runnable action)

在UI线程上运行指定的操作。 如果当前线程是UI线程,那么该动作立即执行。 如果当前线程不是UI线程,则该操作将被发布到UI线程的事件队列中。

Parameters
action Runnable: the action to run on the UI thread

setActionBar

Added in API level 21
void setActionBar (Toolbar toolbar)

设置 Toolbar作为此活动窗口的 ActionBar

当设置为非空值时, getActionBar()方法将返回一个ActionBar对象,该对象可用于控制给定的工具栏,就好像它是传统的窗口装饰操作栏。 工具栏的菜单将填充“活动的选项”菜单,导航按钮将通过标准的home菜单选择操作进行连线。

为了在活动的窗口内容中使用工具栏,应用程序不能请求窗口功能 FEATURE_ACTION_BAR

Parameters
toolbar Toolbar: Toolbar to set as the Activity's action bar, or null to clear it

setContentTransitionManager

Added in API level 21
void setContentTransitionManager (TransitionManager tm)

设置TransitionManager用于此窗口中的默认转换。 需要FEATURE_CONTENT_TRANSITIONS

Parameters
tm TransitionManager: The TransitionManager to use for scene changes.

setContentView

Added in API level 1
void setContentView (View view, 
                ViewGroup.LayoutParams params)

将活动内容设置为显式视图。 该视图直接放置在活动的视图层次结构中。 它本身可能是一个复杂的视图层次结构。

Parameters
view View: The desired content to display.
params ViewGroup.LayoutParams: Layout parameters for the view.

也可以看看:

setContentView

Added in API level 1
void setContentView (View view)

将活动内容设置为显式视图。 该视图直接放置在活动的视图层次结构中。 它本身可能是一个复杂的视图层次结构。 调用此方法时,指定视图的布局参数将被忽略。 视图的宽度和高度都默认设置为MATCH_PARENT 要使用您自己的布局参数,请调用setContentView(android.view.View, android.view.ViewGroup.LayoutParams)

Parameters
view View: The desired content to display.

也可以看看:

setContentView

Added in API level 1
void setContentView (int layoutResID)

设置布局资源的活动内容。 资源将被夸大,将所有顶级视图添加到活动中。

Parameters
layoutResID int: Resource ID to be inflated.

也可以看看:

setDefaultKeyMode

Added in API level 1
void setDefaultKeyMode (int mode)

选择此活动的默认密钥处理。 这控制了未处理的关键事件会发生什么。 默认模式( DEFAULT_KEYS_DISABLE )会将它们放在地板上。 其他模式允许您启动拨号程序( DEFAULT_KEYS_DIALER ),在选项菜单中执行快捷方式,而无需按住菜单键( DEFAULT_KEYS_SHORTCUT )或启动搜索( DEFAULT_KEYS_SEARCH_LOCALDEFAULT_KEYS_SEARCH_GLOBAL )。

请注意,此处选择的模式不会影响系统键(例如“后退”和“菜单”键)的默认处理,并且您的活动及其视图始终有第一次接收和处理所有应用程序键的机会。

Parameters
mode int: The desired default key mode constant.

也可以看看:

setEnterSharedElementCallback

Added in API level 21
void setEnterSharedElementCallback (SharedElementCallback callback)

当使用makeSceneTransitionAnimation(Activity, android.view.View, String)启动Activity时,将调用回调来处理启动的 Activity上的共享元素。 这需要FEATURE_ACTIVITY_TRANSITIONS

Parameters
callback SharedElementCallback: Used to manipulate shared element transitions on the launched Activity.

setExitSharedElementCallback

Added in API level 21
void setExitSharedElementCallback (SharedElementCallback callback)

当使用makeSceneTransitionAnimation(Activity, android.view.View, String)启动Activity时,将调用回调来处理启动 Activity上的共享元素。 大多数电话只会在从启动的活动返回时才会发生。 这需要FEATURE_ACTIVITY_TRANSITIONS

Parameters
callback SharedElementCallback: Used to manipulate shared element transitions on the launching Activity.

setFeatureDrawable

Added in API level 1
void setFeatureDrawable (int featureId, 
                Drawable drawable)

方便拨打 setFeatureDrawable(int, Drawable)

Parameters
featureId int
drawable Drawable

setFeatureDrawableAlpha

Added in API level 1
void setFeatureDrawableAlpha (int featureId, 
                int alpha)

方便拨打 setFeatureDrawableAlpha(int, int)

Parameters
featureId int
alpha int

setFeatureDrawableResource

Added in API level 1
void setFeatureDrawableResource (int featureId, 
                int resId)

方便拨打 setFeatureDrawableResource(int, int)

Parameters
featureId int
resId int

setFeatureDrawableUri

Added in API level 1
void setFeatureDrawableUri (int featureId, 
                Uri uri)

方便拨打 setFeatureDrawableUri(int, Uri)

Parameters
featureId int
uri Uri

setFinishOnTouchOutside

Added in API level 11
void setFinishOnTouchOutside (boolean finish)

设置此活动是否在窗口范围外触摸完成。

Parameters
finish boolean

setImmersive

Added in API level 18
void setImmersive (boolean i)

调整当前沉浸模式设置。 请注意,更改此值不会影响活动的ActivityInfo结构; 也就是说,如果android:immersive在该活动的应用程序的清单条目中被设置为true ,那么ActivityInfo.flags成员将始终设置其FLAG_IMMERSIVE位。

Parameters
i boolean

也可以看看:

setIntent

Added in API level 1
void setIntent (Intent newIntent)

更改由getIntent()返回的意图。 这是对给定意图的参考; 它不会复制它。 通常与onNewIntent(Intent)一起使用。

Parameters
newIntent Intent: The new Intent object to return from getIntent

也可以看看:

setMediaController

Added in API level 21
void setMediaController (MediaController controller)

设置 MediaController将媒体密钥和音量更改发送到。

控制器将被绑定到本活动的窗口。 在活动处于前台时接收到的媒体密钥和音量事件将被转发给控制器,并用于调用传输控件或调整音量。 这可以用来代替或补充setVolumeControlStream(int)来影响特定的会话而不是特定的流。

无法保证硬件音量控制将始终更改此会话的音量(例如,如果正在进行呼叫,其流的音量可能会改变)。 要重置回默认值,使用null作为控制器。

Parameters
controller MediaController: The controller for the session which should receive media keys and volume changes.

setProgress

Added in API level 1
void setProgress (int progress)

此方法在API级别24中已弃用。
从API 21开始不再支持。

设置标题中进度条的进度。

为了显示进度条,必须通过 requestWindowFeature(int)请求该功能。

Parameters
progress int: The progress for the progress bar. Valid ranges are from 0 to 10000 (both inclusive). If 10000 is given, the progress bar will be completely filled and will fade out.

setProgressBarIndeterminate

Added in API level 1
void setProgressBarIndeterminate (boolean indeterminate)

此方法在API级别24中已弃用。
从API 21开始不再支持。

设置标题中的水平进度条是否应该是不确定的(圆形总是不确定的)。

为了显示进度条,必须通过 requestWindowFeature(int)来请求该功能。

Parameters
indeterminate boolean: Whether the horizontal progress bar should be indeterminate.

setProgressBarIndeterminateVisibility

Added in API level 1
void setProgressBarIndeterminateVisibility (boolean visible)

此方法在API级别24中已弃用。
从API 21开始不再支持。

设置标题中不确定进度栏的可见性。

为了显示进度条,必须通过 requestWindowFeature(int)来请求该功能。

Parameters
visible boolean: Whether to show the progress bars in the title.

setProgressBarVisibility

Added in API level 1
void setProgressBarVisibility (boolean visible)

此方法在API级别24中已弃用。
从API 21开始不再支持。

设置标题中进度条的可见性。

为了显示进度条,必须通过 requestWindowFeature(int)请求该功能。

Parameters
visible boolean: Whether to show the progress bars in the title.

setRequestedOrientation

Added in API level 1
void setRequestedOrientation (int requestedOrientation)

更改此活动的所需方向。 如果活动当前处于前台或以其他方式影响屏幕方向,则屏幕将立即更改(可能导致活动重新启动)。 否则,这将在下次活动可见时使用。

Parameters
requestedOrientation int: An orientation constant as used in ActivityInfo.screenOrientation.

setResult

Added in API level 1
void setResult (int resultCode, 
                Intent data)

调用此方法设置您的活动将返回给调用者的结果。

GINGERBREAD ,您在此处提供的意向可以设置为Intent.FLAG_GRANT_READ_URI_PERMISSION和/或Intent.FLAG_GRANT_WRITE_URI_PERMISSION 这将授予Activity接收结果访问意向中的特定URI。 访问将保持到Activity完成(它将保留在主机进程中被杀死和其他临时销毁),并将被添加到任何现有的URI权限集合中。

Parameters
resultCode int: The result code to propagate back to the originating activity, often RESULT_CANCELED or RESULT_OK
data Intent: The data to propagate back to the originating activity.

也可以看看:

setResult

Added in API level 1
void setResult (int resultCode)

调用此方法设置您的活动将返回给调用者的结果。

Parameters
resultCode int: The result code to propagate back to the originating activity, often RESULT_CANCELED or RESULT_OK

也可以看看:

setSecondaryProgress

Added in API level 1
void setSecondaryProgress (int secondaryProgress)

此方法在API级别24中已弃用。
从API 21开始不再支持。

设置标题中进度条的二级进度。 这一进展setProgress(int)主要进展(通过setProgress(int)和背景设置),对于媒体场景比较理想,例如显示缓冲进度,而默认进度显示进度。

为了显示进度条,必须通过 requestWindowFeature(int)请求该功能。

Parameters
secondaryProgress int: The secondary progress for the progress bar. Valid ranges are from 0 to 10000 (both inclusive).

setTaskDescription

Added in API level 21
void setTaskDescription (ActivityManager.TaskDescription taskDescription)

使用此活动设置描述任务的信息,以便在最近的系统UI中呈现。 getRecentTasks(int, int)被调用时,每个任务的活动按照从最顶层活动到最底层的顺序遍历。 遍历每个属性继续,直到找到合适的值。 对于每个任务,taskDescription将返回ActivityManager.TaskDescription

Parameters
taskDescription ActivityManager.TaskDescription: The TaskDescription properties that describe the task with this activity

也可以看看:

setTheme

Added in API level 1
void setTheme (int resid)

为此上下文设置基本主题。 请注意,应在上下文中实例化任何视图之前调用setContentView(View) (例如,在调用setContentView(View)inflate(int, ViewGroup)之前)。

Parameters
resid int: The style resource describing the theme.

setTitle

Added in API level 1
void setTitle (CharSequence title)

更改与此活动关联的标题。 如果这是顶级活动,其窗口的标题将会改变。 如果是嵌入式活动,父母可以随心所欲地做任何事情。

Parameters
title CharSequence

setTitle

Added in API level 1
void setTitle (int titleId)

更改与此活动关联的标题。 如果这是顶级活动,其窗口的标题将会改变。 如果是嵌入式活动,父母可以随心所欲地做任何事情。

Parameters
titleId int

setTitleColor

Added in API level 1
void setTitleColor (int textColor)

此方法在API级别21中已弃用。
改为使用操作栏样式。

更改与此活动关联的标题的颜色。

此方法已从API级别11开始弃用,并由操作栏样式取代。 有关样式化操作栏的信息,请阅读Action Bar开发人员指南。

Parameters
textColor int

setVisible

Added in API level 3
void setVisible (boolean visible)

控制此活动的主窗口是否可见。 这仅适用于不会显示UI本身的活动的特殊情况,但不能仅在onResume()之前完成,因为它需要等待服务绑定等。 将其设置为false可以防止在此期间显示您的UI。

其默认值取自活动主题的 windowNoDisplay属性。

Parameters
visible boolean

setVolumeControlStream

Added in API level 1
void setVolumeControlStream (int streamType)

建议音量应由硬件音量控制器更改的音频流。

建议的音频流将被绑定到该活动的窗口。 在活动处于前台时收到的卷请求将影响此流。

无法保证硬件音量控制将始终更改此流的音量(例如,如果正在进行呼叫,其流的音量可能会改变)。 要重置为默认值,请使用USE_DEFAULT_STREAM_TYPE

Parameters
streamType int: The type of the audio stream whose volume should be changed by the hardware volume controls.

setVrModeEnabled

Added in API level 24
void setVrModeEnabled (boolean enabled, 
                ComponentName requestedComponent)

为此活动启用或禁用虚拟现实(VR)模式。

VR模式提示Android系统切换到针对VR应用程序优化的模式,而此活动具有用户焦点。

建议应用程序在清单中额外声明 enableVrMode ,以便在VR活动之间切换时实现平滑的活动转换。

如果请求的VrListenerService组件不可用,则VR模式将不会启动。 开发人员可以如下处理这种情况:

 String servicePackage = "com.whatever.app";
 String serviceClass = "com.whatever.app.MyVrListenerService";

 // Name of the component of the VrListenerService to start.
 ComponentName serviceComponent = new ComponentName(servicePackage, serviceClass);

 try {
    setVrModeEnabled(true, myComponentName);
 } catch (PackageManager.NameNotFoundException e) {
        List<ApplicationInfo> installed = getPackageManager().getInstalledApplications(0);
        boolean isInstalled = false;
        for (ApplicationInfo app : installed) {
            if (app.packageName.equals(servicePackage)) {
                isInstalled = true;
                break;
            }
        }
        if (isInstalled) {
            // Package is installed, but not enabled in Settings.  Let user enable it.
            startActivity(new Intent(Settings.ACTION_VR_LISTENER_SETTINGS));
        } else {
            // Package is not installed.  Send an intent to download this.
            sentIntentToLaunchAppStore(servicePackage);
        }
 }
 

Parameters
enabled boolean: true to enable this mode.
requestedComponent ComponentName: the name of the component to use as a VrListenerService while VR mode is enabled.
Throws
PackageManager.NameNotFoundException if the given component to run as a VrListenerService is not installed, or has not been enabled in user settings.

也可以看看:

shouldShowRequestPermissionRationale

Added in API level 23
boolean shouldShowRequestPermissionRationale (String permission)

获取是否应该以请求许可的理由显示UI。 只有当您没有权限时,您才应该执行此操作,并且请求权限的上下文未明确向用户传达授予此权限的好处。

例如,如果您编写摄像头应用程序,用户就需要请求摄像头权限,并且不需要为什么要求摄像头。 然而,如果应用程序需要位置来标记照片,那么非技术精明的用户可能想知道位置如何与拍照相关。 在这种情况下,您可以选择以请求此权限的理由显示UI。

Parameters
permission String: A permission your app wants to request.
Returns
boolean Whether you can show permission rationale UI.

也可以看看:

shouldUpRecreateTask

Added in API level 16
boolean shouldUpRecreateTask (Intent targetIntent)

如果应用程序在使用targetIntent从此活动导航“向上”时重新创建任务,则返回true。

如果此方法返回false,则应用程序可以使用相同的参数轻松地调用navigateUpTo(Intent)以正确执行导航。 如果此方法返回false,则应用程序应使用TaskStackBuilder或其他类似的机制来合成新的任务堆栈以执行导航。

Parameters
targetIntent Intent: An intent representing the target destination for up navigation
Returns
boolean true if navigating up should recreate a new task stack, false if the same task should be used for the destination

showAssist

Added in API level 23
boolean showAssist (Bundle args)

要求将当前助理显示给用户。 这只适用于调用活动是当前前台活动的情况。 这与调用VoiceInteractionService.showSession并请求所有可能的上下文相同。 接收器将始终看到SHOW_SOURCE_APPLICATION集。

Parameters
args Bundle
Returns
boolean Returns true if the assistant was successfully invoked, else false. For example false will be returned if the caller is not the current top activity.

showDialog

Added in API level 8
boolean showDialog (int id, 
                Bundle args)

此方法在API级别13中已被弃用。
改为使用新的DialogFragment类和FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

显示由此活动管理的对话框。 第一次调用给定的ID时,将调用onCreateDialog(int, Bundle)与相同的ID。 之后,对话框将自动保存并恢复。 如果您的目标是HONEYCOMB或更高版本,请考虑改为使用DialogFragment

每次显示对话框时, onPrepareDialog(int, Dialog, Bundle)将提供一个机会来做任何及时的准备。

Parameters
id int: The id of the managed dialog.
args Bundle: Arguments to pass through to the dialog. These will be saved and restored for you. Note that if the dialog is already created, onCreateDialog(int, Bundle) will not be called with the new arguments but onPrepareDialog(int, Dialog, Bundle) will be. If you need to rebuild the dialog, call removeDialog(int) first.
Returns
boolean Returns true if the Dialog was created; false is returned if it is not created because onCreateDialog(int, Bundle) returns false.

也可以看看:

showDialog

Added in API level 1
void showDialog (int id)

此方法在API级别13中已被弃用。
改为使用新的DialogFragment类和FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

简单版本的showDialog(int, Bundle) ,没有任何参数。 只需用空参数调用showDialog(int, Bundle)

Parameters
id int

showLockTaskEscapeMessage

Added in API level 23
void showLockTaskEscapeMessage ()

向用户显示系统定义的消息,以告诉用户如何退出锁定任务模式。 在此次调用时,包含此活动的任务必须处于锁定任务模式才能显示消息。

startActionMode

Added in API level 23
ActionMode startActionMode (ActionMode.Callback callback, 
                int type)

启动给定类型的操作模式。

Parameters
callback ActionMode.Callback: Callback that will manage lifecycle events for this action mode
type int: One of TYPE_PRIMARY or TYPE_FLOATING.
Returns
ActionMode The ActionMode that was started, or null if it was canceled

也可以看看:

startActionMode

Added in API level 11
ActionMode startActionMode (ActionMode.Callback callback)

启动默认类型 TYPE_PRIMARY的操作模式。

Parameters
callback ActionMode.Callback: Callback that will manage lifecycle events for this action mode
Returns
ActionMode The ActionMode that was started, or null if it was canceled

也可以看看:

startActivities

Added in API level 16
void startActivities (Intent[] intents, 
                Bundle options)

启动一项新活动。 您不会收到有关活动何时退出的任何信息。 此实施覆盖基本版本,提供有关执行启动的活动的信息。 由于这些附加信息, FLAG_ACTIVITY_NEW_TASK启动标志不是必需的; 如果未指定,则新活动将被添加到调用者的任务中。

如果没有找到运行给定Intent的Activity,则此方法将引发 ActivityNotFoundException

Parameters
intents Intent: The intents to start.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivities

Added in API level 11
void startActivities (Intent[] intents)

与没有指定选项的 startActivities(Intent[], Bundle)相同。

Parameters
intents Intent: The intents to start.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivity

Added in API level 1
void startActivity (Intent intent)

startActivity(Intent, Bundle)相同,没有指定选项。

Parameters
intent Intent: The intent to start.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivity

Added in API level 16
void startActivity (Intent intent, 
                Bundle options)

启动一项新活动。 您不会收到有关活动何时退出的任何信息。 此实施覆盖基本版本,提供有关执行启动的活动的信息。 由于这些附加信息, FLAG_ACTIVITY_NEW_TASK启动标志不是必需的; 如果未指定,则新活动将被添加到调用者的任务中。

如果没有找到运行给定Intent的活动,则此方法将引发 ActivityNotFoundException

Parameters
intent Intent: The intent to start.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityForResult

Added in API level 1
void startActivityForResult (Intent intent, 
                int requestCode)

与呼叫 startActivityForResult(Intent, int, Bundle)没有选项相同。

Parameters
intent Intent: The intent to start.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityForResult

Added in API level 16
void startActivityForResult (Intent intent, 
                int requestCode, 
                Bundle options)

在完成后启动您希望得到结果的活动。 当此活动退出时,将使用给定的requestCode调用onActivityResult()方法。 使用负的requestCode与调用startActivity(Intent)相同(该活动不作为子活动启动)。

请注意,此方法只应与用于返回结果的Intent协议一起使用。 在其他协议(如ACTION_MAINACTION_VIEW )中,如果您期望,可能无法获得结果。 例如,如果您正在启动的活动使用singleTask启动模式,它将不会在您的任务中运行,因此您将立即收到取消结果。

作为一种特殊情况,如果您在activity的初始onCreate(Bundle savedInstanceState)/ onResume()过程中调用startActivityForResult(),并且requestCode> = 0,那么在从已启动的活动返回结果之前,您的窗口将不会显示。 这是为了避免在重定向到其他活动时出现可见的闪烁。

如果没有找到运行给定Intent的活动,则此方法将引发 ActivityNotFoundException

Parameters
intent Intent: The intent to start.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityFromChild

Added in API level 1
void startActivityFromChild (Activity child, 
                Intent intent, 
                int requestCode)

与呼叫 startActivityFromChild(Activity, Intent, int, Bundle)没有选项相同。

Parameters
child Activity: The activity making the call.
intent Intent: The intent to start.
requestCode int: Reply request code. < 0 if reply is not requested.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityFromChild

Added in API level 16
void startActivityFromChild (Activity child, 
                Intent intent, 
                int requestCode, 
                Bundle options)

当这个小孩的活动叫做 startActivity(Intent)startActivityForResult(Intent, int)方法时,这被称为。

如果没有找到运行给定Intent的活动,则此方法将引发 ActivityNotFoundException

Parameters
child Activity: The activity making the call.
intent Intent: The intent to start.
requestCode int: Reply request code. < 0 if reply is not requested.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityFromFragment

Added in API level 16
void startActivityFromFragment (Fragment fragment, 
                Intent intent, 
                int requestCode, 
                Bundle options)

当此活动中的片段调用其 startActivity(Intent)startActivityForResult(Intent, int)方法时会调用此方法。

如果没有找到运行给定Intent的活动,则此方法将引发 ActivityNotFoundException

Parameters
fragment Fragment: The fragment making the call.
intent Intent: The intent to start.
requestCode int: Reply request code. < 0 if reply is not requested.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityFromFragment

Added in API level 11
void startActivityFromFragment (Fragment fragment, 
                Intent intent, 
                int requestCode)

与呼叫 startActivityFromFragment(Fragment, Intent, int, Bundle)没有选项相同。

Parameters
fragment Fragment: The fragment making the call.
intent Intent: The intent to start.
requestCode int: Reply request code. < 0 if reply is not requested.
Throws
android.content.ActivityNotFoundException

也可以看看:

startActivityIfNeeded

Added in API level 16
boolean startActivityIfNeeded (Intent intent, 
                int requestCode, 
                Bundle options)

仅当需要新的活动实例才能处理给定的Intent时才启动活动的特殊变体。 换句话说,就像startActivityForResult(Intent, int)一样,除了:如果您使用FLAG_ACTIVITY_SINGLE_TOP标志,或者singleTask或singleTop launchMode ,并且处理意图的活动与当前正在运行的活动相同,则不需要新实例。 在这种情况下,而不是调用onNewIntent(Intent)的正常行为,此函数将返回,您可以自己处理Intent。

该功能只能从顶级活动中调用; 如果从子活动中调用它,则会抛出运行时异常。

Parameters
intent Intent: The intent to start.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits, as described in startActivityForResult(Intent, int).
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Returns
boolean If a new activity was launched then true is returned; otherwise false is returned and you must handle the Intent yourself.

也可以看看:

startActivityIfNeeded

Added in API level 1
boolean startActivityIfNeeded (Intent intent, 
                int requestCode)

与呼叫 startActivityIfNeeded(Intent, int, Bundle) ,没有选项。

Parameters
intent Intent: The intent to start.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits, as described in startActivityForResult(Intent, int).
Returns
boolean If a new activity was launched then true is returned; otherwise false is returned and you must handle the Intent yourself.

也可以看看:

startIntentSender

Added in API level 5
void startIntentSender (IntentSender intent, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags)

与呼叫 startIntentSender(IntentSender, Intent, int, int, int, Bundle)没有选项相同。

Parameters
intent IntentSender: The IntentSender to launch.
fillInIntent Intent: If non-null, this will be provided as the intent parameter to sendIntent(Context, int, Intent, IntentSender.OnFinished, Handler).
flagsMask int: Intent flags in the original IntentSender that you would like to change.
flagsValues int: Desired values for any bits set in flagsMask
extraFlags int: Always set to 0.
Throws
IntentSender.SendIntentException

startIntentSender

Added in API level 16
void startIntentSender (IntentSender intent, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags, 
                Bundle options)

startActivity(Intent, Bundle)一样,但需要启动一个IntentSender; 有关更多信息,请参阅startIntentSenderForResult(IntentSender, int, Intent, int, int, int, Bundle)

Parameters
intent IntentSender: The IntentSender to launch.
fillInIntent Intent: If non-null, this will be provided as the intent parameter to sendIntent(Context, int, Intent, IntentSender.OnFinished, Handler).
flagsMask int: Intent flags in the original IntentSender that you would like to change.
flagsValues int: Desired values for any bits set in flagsMask
extraFlags int: Always set to 0.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details. If options have also been supplied by the IntentSender, options given here will override any that conflict with those given by the IntentSender.
Throws
IntentSender.SendIntentException

startIntentSenderForResult

Added in API level 5
void startIntentSenderForResult (IntentSender intent, 
                int requestCode, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags)

与呼叫 startIntentSenderForResult(IntentSender, int, Intent, int, int, int, Bundle)没有选项相同。

Parameters
intent IntentSender: The IntentSender to launch.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits.
fillInIntent Intent: If non-null, this will be provided as the intent parameter to sendIntent(Context, int, Intent, IntentSender.OnFinished, Handler).
flagsMask int: Intent flags in the original IntentSender that you would like to change.
flagsValues int: Desired values for any bits set in flagsMask
extraFlags int: Always set to 0.
Throws
IntentSender.SendIntentException

startIntentSenderForResult

Added in API level 16
void startIntentSenderForResult (IntentSender intent, 
                int requestCode, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags, 
                Bundle options)

startActivityForResult(Intent, int)一样,但允许您使用IntentSender来描述要启动的活动。 如果IntentSender用于某个活动,那么该活动将开始,就像您在此调用常规startActivityForResult(Intent, int) ; 否则,其相关操作将被执行(例如发送广播),就好像您已经调用了IntentSender.sendIntent一样。

Parameters
intent IntentSender: The IntentSender to launch.
requestCode int: If >= 0, this code will be returned in onActivityResult() when the activity exits.
fillInIntent Intent: If non-null, this will be provided as the intent parameter to sendIntent(Context, int, Intent, IntentSender.OnFinished, Handler).
flagsMask int: Intent flags in the original IntentSender that you would like to change.
flagsValues int: Desired values for any bits set in flagsMask
extraFlags int: Always set to 0.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details. If options have also been supplied by the IntentSender, options given here will override any that conflict with those given by the IntentSender.
Throws
IntentSender.SendIntentException

startIntentSenderFromChild

Added in API level 16
void startIntentSenderFromChild (Activity child, 
                IntentSender intent, 
                int requestCode, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags, 
                Bundle options)

startActivityFromChild(Activity, Intent, int) ,但采取一个IntentSender; 有关更多信息,请参阅startIntentSenderForResult(IntentSender, int, Intent, int, int, int)

Parameters
child Activity
intent IntentSender
requestCode int
fillInIntent Intent
flagsMask int
flagsValues int
extraFlags int
options Bundle
Throws
IntentSender.SendIntentException

startIntentSenderFromChild

Added in API level 5
void startIntentSenderFromChild (Activity child, 
                IntentSender intent, 
                int requestCode, 
                Intent fillInIntent, 
                int flagsMask, 
                int flagsValues, 
                int extraFlags)

与呼叫 startIntentSenderFromChild(Activity, IntentSender, int, Intent, int, int, int, Bundle)没有选项相同。

Parameters
child Activity
intent IntentSender
requestCode int
fillInIntent Intent
flagsMask int
flagsValues int
extraFlags int
Throws
IntentSender.SendIntentException

startLocalVoiceInteraction

Added in API level 24
void startLocalVoiceInteraction (Bundle privateOptions)

开始本地语音交互会话。 准备好后, onLocalVoiceInteractionStarted() 您可以将一揽子私人选项传递到注册的语音交互服务。

Parameters
privateOptions Bundle: a Bundle of private arguments to the current voice interaction service

startLockTask

Added in API level 21
void startLockTask ()

请求将此活动置于用户锁定当前任务的模式。 这将阻止用户启动其他应用程序,进入设置或到达主屏幕。 这不包括lockTaskMode值允许在锁定时启动的应用程序。 如果isLockTaskPermitted(String)对此组件返回true或lockTaskMode = lockTaskModeAlways,则应用程序将直接进入锁定任务模式。 在调用stopLockTask()之前,用户将无法退出该模式。 如果isLockTaskPermitted(String)返回false,则系统将通过一个对话框提示用户进入该模式。 通过此方法输入时,用户可以随时通过请求对话框描述的操作退出。 调用stopLockTask也将退出该模式。

也可以看看:

startManagingCursor

Added in API level 1
void startManagingCursor (Cursor c)

此方法在API级别11中已弃用。
改为使用新的CursorLoader类和LoaderManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

此方法允许活动根据活动的生命周期来管理给定的Cursor的生命周期。 也就是说,当活动停止时,它会自动调用给定光标上的deactivate() ,当它稍后重新启动时,它将为您调用requery() 当活动被破坏时,所有托管游标将自动关闭。 如果您的目标是HONEYCOMB或更高版本,请考虑改为使用LoaderManager而不要使用getLoaderManager()

警告:不要在从managedQuery(Uri, String[], String, String[], String)获得的光标上调用close() ,因为该活动将在适当的时间为您执行此操作。 但是,如果从管理查询的光标上调用stopManagingCursor(Cursor) ,系统将不会自动关闭光标,在这种情况下,您必须调用close()

Parameters
c Cursor: The Cursor to be managed.

也可以看看:

startNextMatchingActivity

Added in API level 16
boolean startNextMatchingActivity (Intent intent, 
                Bundle options)

开始活动的特殊版本,供替换其他活动组件时使用。 您可以使用它将Intent移交给可以处理它的下一个活动。 您通常在onCreate(Bundle)调用此onCreate(Bundle) ,并通过getIntent()返回getIntent()

Parameters
intent Intent: The intent to dispatch to the next activity. For correct behavior, this must be the same as the Intent that started your own activity; the only changes you can make are to the extras inside of it.
options Bundle: Additional options for how the Activity should be started. See Context.startActivity(Intent, Bundle) for more details.
Returns
boolean Returns a boolean indicating whether there was another Activity to start: true if there was a next activity to start, false if there wasn't. In general, if true is returned you will then want to call finish() on yourself.

startNextMatchingActivity

Added in API level 1
boolean startNextMatchingActivity (Intent intent)

与呼叫 startNextMatchingActivity(Intent, Bundle)没有选项相同。

Parameters
intent Intent: The intent to dispatch to the next activity. For correct behavior, this must be the same as the Intent that started your own activity; the only changes you can make are to the extras inside of it.
Returns
boolean Returns a boolean indicating whether there was another Activity to start: true if there was a next activity to start, false if there wasn't. In general, if true is returned you will then want to call finish() on yourself.

startPostponedEnterTransition

Added in API level 21
void startPostponedEnterTransition ()

postponeEnterTransition()被调用后开始推迟转换。 如果调用postponeEnterTransition(),则必须调用startPostponedEnterTransition()以使您的活动开始绘制。

startSearch

Added in API level 1
void startSearch (String initialQuery, 
                boolean selectInitialQuery, 
                Bundle appSearchData, 
                boolean globalSearch)

这个钩子被调用来启动搜索UI。

它通常从onSearchRequested()中调用,直接从Activity.onSearchRequested()或任何给定Activity中的重写版本中调用。 如果您的目标仅仅是激活搜索,则最好调用onSearchRequested(),它可能已被您的Activity中的其他地方覆盖。 如果您的目标是注入特定数据(如上下文数据),则最好重写 onSearchRequested(),以便任何呼叫者都能从覆盖中受益。

Parameters
initialQuery String: Any non-null non-empty string will be inserted as pre-entered text in the search query box.
selectInitialQuery boolean: If true, the initial query will be preselected, which means that any further typing will replace it. This is useful for cases where an entire pre-formed query is being inserted. If false, the selection point will be placed at the end of the inserted query. This is useful when the inserted query is text that the user entered, and the user would expect to be able to keep typing. This parameter is only meaningful if initialQuery is a non-empty string.
appSearchData Bundle: An application can insert application-specific context here, in order to improve quality or specificity of its own searches. This data will be returned with SEARCH intent(s). Null if no extra data is required.
globalSearch boolean: If false, this will only launch the search that has been specifically defined by the application (which is usually defined as a local search). If no default search is defined in the current application or activity, global search will be launched. If true, this will always launch a platform-global (e.g. web-based) search instead.

也可以看看:

stopLocalVoiceInteraction

Added in API level 24
void stopLocalVoiceInteraction ()

请求终止以前使用startLocalVoiceInteraction(Bundle)开始的当前语音交互。 当交互终止时,将会调用onLocalVoiceInteractionStopped()

stopLockTask

Added in API level 21
void stopLockTask ()

允许用户切换当前任务。 呼叫结束由startLockTask()开始的模式。 这只能由先前成功调用startLockTask的活动调用。 这将允许用户退出这个应用程序并转移到其他活动。

注意:只有在活动面向用户时才应调用此方法。 也就是说,在onResume()和onPause()之间。

注意:如果此下面还有其他任务也被锁定,则调用此方法将立即完成此任务并恢复先前锁定的任务,并保持lockTask模式。

也可以看看:

stopManagingCursor

Added in API level 1
void stopManagingCursor (Cursor c)

此方法在API级别11中已弃用。
改为使用新的CursorLoader类和LoaderManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

给定一个以前给予 startManagingCursor(Cursor) ,停止该游标的活动管理。

警告:在从管理查询的光标上调用此方法后,系统 不会自动关闭光标,并且必须调用 close()

Parameters
c Cursor: The Cursor that was being managed.

也可以看看:

takeKeyEvents

Added in API level 1
void takeKeyEvents (boolean get)

要求重要事件来参加这项活动。 如果您的活动没有焦点的视图,但是该活动仍然希望有机会处理关键事件,请使用此选项。

Parameters
get boolean

也可以看看:

triggerSearch

Added in API level 5
void triggerSearch (String query, 
                Bundle appSearchData)

类似于startSearch(String, boolean, Bundle, boolean) ,但实际上在调用搜索对话框后触发搜索查询。 可用于测试目的。

Parameters
query String: The query to trigger. If empty, the request will be ignored.
appSearchData Bundle: An application can insert application-specific context here, in order to improve quality or specificity of its own searches. This data will be returned with SEARCH intent(s). Null if no extra data is required.

unregisterForContextMenu

Added in API level 1
void unregisterForContextMenu (View view)

防止为给定视图显示上下文菜单。 此方法将删除视图上的View.OnCreateContextMenuListener

Parameters
view View: The view that should stop showing a context menu.

也可以看看:

Protected methods

onActivityResult

Added in API level 1
void onActivityResult (int requestCode, 
                int resultCode, 
                Intent data)

当您启动的活动退出时调用,为您提供您启动的requestCode,返回的resultCode以及其中的任何其他数据。 发送resultCode将是RESULT_CANCELED如果活动明确地返回,没有返回任何结果,或它的操作过程中坠毁。

当您的活动重新开始时,您将在onResume()之前立即收到此电话。

如果你的活动设置,该方法不会调用 noHistorytrue

Parameters
requestCode int: The integer request code originally supplied to startActivityForResult(), allowing you to identify who this result came from.
resultCode int: The integer result code returned by the child activity through its setResult().
data Intent: An Intent, which can return result data to the caller (various data can be attached to Intent "extras").

也可以看看:

onApplyThemeResource

Added in API level 1
void onApplyThemeResource (Resources.Theme theme, 
                int resid, 
                boolean first)

setTheme(int)getTheme()调用以将主题资源应用于当前主题对象。 可能会被覆盖以更改默认(简单)行为。 此方法不会在多个线程中同时调用。

Parameters
theme Resources.Theme: the theme being modified
resid int: the style resource being applied to theme
first boolean: true if this is the first time a style is being applied to theme

onChildTitleChanged

Added in API level 1
void onChildTitleChanged (Activity childActivity, 
                CharSequence title)

Parameters
childActivity Activity
title CharSequence

onCreate

Added in API level 1
void onCreate (Bundle savedInstanceState)

当活动开始时调用。 这是大多数初始化应该去的地方:调用setContentView(int)setContentView(int)活动的UI,使用findViewById(int)以编程方式与UI中的小部件进行交互,调用managedQuery(android.net.Uri, String[], String, String[], String)以检索显示的数据的光标等。

您可以拨打 finish()从这个函数中,在这种情况下的onDestroy()将被立即调用没有任何活动的生命周期(其余的 onStart()onResume()onPause()执行等)。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

Parameters
savedInstanceState Bundle: If the activity is being re-initialized after previously being shut down then this Bundle contains the data it most recently supplied in onSaveInstanceState(Bundle). Note: Otherwise it is null.

也可以看看:

onCreateDialog

Added in API level 1
Dialog onCreateDialog (int id)

此方法在API级别8中已被弃用。
旧的无参数版本onCreateDialog(int, Bundle)

Parameters
id int
Returns
Dialog

onCreateDialog

Added in API level 8
Dialog onCreateDialog (int id, 
                Bundle args)

此方法在API级别13中已被弃用。
改为使用新的DialogFragment类与FragmentManager ; 这也可以通过Android兼容性套件在较早的平台上使用。

回调创建由活动管理(保存和恢复)的对话框。 为了兼容性,默认实现调用onCreateDialog(int) 如果您的目标是HONEYCOMB或更高版本,请考虑改为使用DialogFragment

如果您使用showDialog(int) ,则活动将首次调用此方法,然后再挂上。 任何由此方法创建的对话框都会自动保存并为您恢复,包括是否显示。

如果您希望该活动为您管理保存和恢复对话框,则应该重写此方法并处理传递给 showDialog(int)任何ID。

如果您希望有机会在显示对话前准备对话,请覆盖 onPrepareDialog(int, Dialog, Bundle)

Parameters
id int: The id of the dialog.
args Bundle: The dialog arguments provided to showDialog(int, Bundle).
Returns
Dialog The dialog. If you return null, the dialog will not be created.

也可以看看:

onDestroy

Added in API level 1
void onDestroy ()

在活动销毁之前执行任何最终清理。 这可能是因为活动正在完成(有人称为finish() ,或者系统暂时销毁此活动的实例以节省空间),您可以使用isFinishing()方法区分这两种情况。

注意:不要将此方法称为保存数据的地方! 例如,如果一项活动正在编辑内容提供商中的数据,那么这些编辑应该在onPause()onSaveInstanceState(Bundle) ,而不是在这里onSaveInstanceState(Bundle) 这种方法通常被实现为释放资源,例如与活动相关联的线程,这样一个被销毁的活动就不会离开这些东西,而其他应用程序仍在运行。 在某些情况下,系统只会在不调用该方法(或任何其他方法)的情况下终止该活动的托管过程,因此不应该将其用于在过程消失后执行那些旨在保留的事情。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onNewIntent

Added in API level 1
void onNewIntent (Intent intent)

这是针对在其包中将launchMode设置为“singleTop”的活动或者在调用startActivity(Intent)时客户端使用FLAG_ACTIVITY_SINGLE_TOP标志的情况下调用的。 在这两种情况下,当活动在活动堆栈顶部重新启动时,而不是启动活动的新实例时,将使用用于重新启动的Intent在现有实例上调用onNewIntent()它。

在接收到新的意图之前,活动总是会暂停,因此您可以依靠此方法调用 onResume()

请注意, getIntent()仍会返回原始意图。 您可以使用setIntent(Intent)将其更新为新的Intent。

Parameters
intent Intent: The new intent that was started for the activity.

也可以看看:

onPause

Added in API level 1
void onPause ()

作为活动生命周期的一部分,当活动进入后台但尚未(尚未)死亡时调用。 对应于onResume()

当活动B在活动A前面启动时,该回调将在A上被调用。在A的 onPause()返回之前,B不会被创建,因此请确保在此处不做任何冗长的事情。

此回调主要用于保存活动正在编辑的任何持续状态,向用户呈现“就地编辑”模型,并确保没有足够的资源来启动新活动,而不必先杀死该活动。 这也是一个很好的地方,可以停止动画和其他消耗大量CPU的内容,以便尽快切换到下一个活动,或者关闭像摄像机这样的独占访问资源。

在系统需要更多内存的情况下,它可能会终止暂停的进程以回收资源。 因此,您应该确保在您从此函数返回时保存所有状态。 通常, onSaveInstanceState(Bundle)用于保存活动中的每个实例状态,并且此方法用于存储全局持久数据(位于内容提供者,文件等中)

收到此通话后,您通常会收到 onStop()的下一个电话(在下一个活动恢复并显示之后),但在某些情况下,将直接回拨至 onResume()而不通过停止状态。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onPostCreate

Added in API level 1
void onPostCreate (Bundle savedInstanceState)

当活动启动完成时调用(在onStart()onRestoreInstanceState(Bundle)之后)。 应用程序通常不会实现这种方法; 它旨在让系统类在应用程序代码运行后进行最终初始化。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

Parameters
savedInstanceState Bundle: If the activity is being re-initialized after previously being shut down then this Bundle contains the data it most recently supplied in onSaveInstanceState(Bundle). Note: Otherwise it is null.

也可以看看:

onPostResume

Added in API level 1
void onPostResume ()

当活动恢复完成时调用(在onResume()之后)。 应用程序通常不会实现这种方法; 它旨在让系统类在应用程序恢复代码运行后进行最终设置。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onPrepareDialog

Added in API level 8
void onPrepareDialog (int id, 
                Dialog dialog, 
                Bundle args)

此方法在API级别13中已被弃用。
改为使用带FragmentManager的新DialogFragment类; 这也可以通过Android兼容性套件在较早的平台上使用。

在显示之前提供一个准备托管对话框的机会。 为了兼容性,默认实现调用onPrepareDialog(int, Dialog)

如果您需要在每次显示应用程序时根据应用程序的状态更新托管对话框,请将其覆盖。 例如,时间选取器对话框可能希望用当前时间更新。 你应该调用超类的实现。 默认实现会将此Activity设置为对话框上的所有者活动。

Parameters
id int: The id of the managed dialog.
dialog Dialog: The dialog.
args Bundle: The dialog arguments provided to showDialog(int, Bundle).

也可以看看:

onPrepareDialog

Added in API level 1
void onPrepareDialog (int id, 
                Dialog dialog)

此方法在API级别8中已被弃用。
旧的无参数版本onPrepareDialog(int, Dialog, Bundle)

Parameters
id int
dialog Dialog

onRestart

Added in API level 1
void onRestart ()

当前活动重新显示给用户(用户已导航回到该用户)时,在onStop()之后调用。 之后是onStart() ,然后是onResume()

对于使用原始 Cursor对象的活动(而不是通过 managedQuery(android.net.Uri, String[], String, String[], String)创建它们,通常这是光标应该被重新查询的地方(因为您已经在 onStop()停用了它)。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onRestoreInstanceState

Added in API level 1
void onRestoreInstanceState (Bundle savedInstanceState)

当活动正在从之前保存的状态重新初始化时,在onStart()之后调用此方法,此处已在savedInstanceState给出 大多数实现将简单地使用onCreate(Bundle)来恢复其状态,但在完成所有初始化或允许子类决定是否使用默认实现之后,在此处执行此操作有时很方便。 此方法的默认实现会执行之前由onSaveInstanceState(Bundle)冻结的任何视图状态的恢复。

此方法在 onStart()onPostCreate(Bundle)之间 onPostCreate(Bundle)

Parameters
savedInstanceState Bundle: the data most recently supplied in onSaveInstanceState(Bundle).

也可以看看:

onResume

Added in API level 1
void onResume ()

后调用onRestoreInstanceState(Bundle)onRestart() ,或onPause() ,为您的活动启动与用户交互。 这是开始动画,打开专用访问设备(如相机)等的好地方。

请记住,onResume并不是您的活动对用户可见的最佳指标; 系统窗口(如键盘)可能在前面。 使用onWindowFocusChanged(boolean)可以确定您的活动对用户是可见的(例如,恢复游戏)。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onSaveInstanceState

Added in API level 1
void onSaveInstanceState (Bundle outState)

被调用以在被杀死之前从活动检索每个实例状态,以便可以在 onCreate(Bundle)onRestoreInstanceState(Bundle)恢复状态(由该方法填充的 Bundle将被传递给两者)。

在一个活动可能被杀死之前调用这个方法,以便在将来它有一段时间它可以恢复它的状态。 例如,如果活动B在活动A之前启动,并且在某些时刻活动A被杀死以回收资源,则活动A将有机会通过此方法保存其用户界面的当前状态,以便当用户返回时到活动A,用户界面的状态可以通过onCreate(Bundle)onRestoreInstanceState(Bundle)恢复。

不要将此方法与活动生命周期回调(如onPause() ,后者始终在活动置于后台或销毁途中调用,或在销毁前调用onStop() 调用onPause()onStop()时的一个示例,而不是此方法是当用户从活动B返回到活动A时:不需要在B上调用onSaveInstanceState(Bundle) ,因为该特定实例永远不会被恢复,因此系统不会调用它。 当一个例子onPause()被调用,不onSaveInstanceState(Bundle)是当活动B在活动A的前方推出:该系统可避免呼叫onSaveInstanceState(Bundle)上活性的,如果它不是B的寿命期间,因为A的用户界面的状态杀死将保持完好。

默认实现通过在具有ID的层次结构中的每个视图上调用onSaveInstanceState() ,并通过保存当前焦点视图的ID(所有视图都由默认实现恢复)来为您处理大部分UI每个实例状态onRestoreInstanceState(Bundle) )。 如果您重写此方法以保存未被每个视图捕获的附加信息,那么您可能需要调用默认实现,否则应准备好保存每个视图的所有状态。

如果调用,则此方法将在onStop()之前onStop() 无法保证是否会在onPause()之前或之后onPause()

Parameters
outState Bundle: Bundle in which to place your saved state.

也可以看看:

onStart

Added in API level 1
void onStart ()

onCreate(Bundle)之后或在onRestart()之后onRestart()活动已停止但现在再次显示给用户时调用。 接下来是onResume()

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onStop

Added in API level 1
void onStop ()

当用户不再可见时调用。 接下来,您将收到无论是onRestart()onDestroy() ,或没有,这取决于后来的用户活动。

派生类必须调用超类的这个方法的实现。 如果他们不这样做,就会抛出异常。

也可以看看:

onTitleChanged

Added in API level 1
void onTitleChanged (CharSequence title, 
                int color)

Parameters
title CharSequence
color int

onUserLeaveHint

Added in API level 3
void onUserLeaveHint ()

作为活动生命周期的一部分,当活动即将作为用户选择的结果进入后台时调用。 例如,当用户按下主页键时,将会调用onUserLeaveHint() ,但当来电打电话导致通话中的活动被自动带到前台时,将不会针对正在中断的活动调用onUserLeaveHint() 在被调用的情况下,该方法在活动的onPause()回调之前被调用。

此回调和onUserInteraction()旨在帮助活动智能地管理状态栏通知; 特别是帮助活动确定取消通知的适当时间。

也可以看看:

Hooray!