ActionBar各种属性的详细解析

2024-05-26 00:18
文章标签 详细 解析 属性 actionbar

本文主要是介绍ActionBar各种属性的详细解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ActionBar

出自Android中文Wiki
跳转到: 导航, 搜索

ActionBar:

英文原文:http://developer.android.com/reference/android/app/ActionBar.html
版本:Android 4.0 r1
译者署名:Rongqi Fan
译者链接: 
ActionBar


public abstract class ActionBar extends Object

java.lang.Object
↳	android.app.ActionBar

有标题栏、导航模式、其它交互项的顶层Activity的窗口属性。

从Android 3.0开始,Activity使用系统Holo主题(及其后续的主题)的时候,默认情况下,工具栏出现在Activity窗口的顶层。你通过调用requestFeature(FEATURE_ACTION_BAR)或是通过windowActionBar定制主题的时候声明来添加工具栏。

默认情况下,程序的图标在工具栏的左边显示,前面是Activity的标题。如果你的Activity有一个选择菜单,。你可以修改工具栏的各种特性或完全移除它。

你可以通过你的Activity调用getActionBar()获取一个 ActionBar的实例。

一些时候,工具栏会被其它工具栏覆盖,使用ActionMode。例如:当用户选择Activity的一个或多个项,,。尽管这个UI或许在相同的位置出现。

开发者指南

如何使用工具栏的信息,包括如何添加工具项,模式等等,阅读:Action Bar 。

概述

嵌套类

类或接口类名或接口名描述
classActionBar.LayoutParams每个子布局与操作栏的定制的ActionBar相关的信息。
interfaceActionBar.OnMenuVisibilityListenerActionBar显示或隐藏的时候产生的事件,使用这个监听器监听。
interfaceActionBar.OnNavigationListenerActionBar导航时间的监听器接口。
classActionBar.TabActionBar里的选卡。
interfaceActionBar.TabListener当一个选卡获得焦点、失去焦点、添加、移除的时候,所需的回调函数


类型类型名描述
intDISPLAY_HOME_AS_UP把‘home’按钮作为一个返回上一级的按钮。
intDISPLAY_SHOW_CUSTOM如何设置了,就显示定制的界面
intDISPLAY_SHOW_HOME在ActionBar里显示‘home’,留出空间来显示其它的导航元素。
intDISPLAY_SHOW_TITLE如果有,显示Activity的标题和子标题
intDISPLAY_USE_LOGO如果有,使用logo代替图标
intNAVIGATION_MODE_LIST列出导航模式
intNAVIGATION_MODE_STANDARD标准导航模式
intNAVIGATION_MODE_TABS选卡导航模式

常量

public static final int DISPLAY_HOME_AS_UP

Since: API Level 11

显示一个“home”来暗示这是一个“up”。例如:在左边显示一个箭头来表示选中这个动作。

如果需要在ActionBar里使用“home”来返回上一级而不是返回到最开始的界面,就设置这个域。设置了这个域就隐式的禁用home/up按钮。阅读setHomeButtonEnabled(boolean)。

参考

• setDisplayOptions(int)

• setDisplayOptions(int, int)

常量值:4 (0x00000004)

public static final int DISPLAY_SHOW_CUSTOM

Since: API Level 11

如果设置就显示定制的视图。

参考

• setCustomView(View)

• setDisplayOptions(int)

• setDisplayOptions(int, int)

常量值:16 (0x00000010)


public static final int DISPLAY_SHOW_HOME

Since: API Level 11

在ActionBar里显示‘home’,留出更多的空间来显示其它导航的控件。包括logo和图标。

参考

• setDisplayOptions(int)

• setDisplayOptions(int, int)

常量值: 2 (0x00000002)

public static final int DISPLAY_SHOW_TITLE

Since: API Level 11

显示Activity的标题和子标题

参考

• setTitle(CharSequence)

• setTitle(int)

• setSubtitle(CharSequence)

• setSubtitle(int)

• setDisplayOptions(int)

• setDisplayOptions(int, int)

常量值: 8 (0x00000008)


public static final int DISPLAY_USE_LOGO

Since: API Level 11

如果有,使用logo代替图标。这个域使用适合的导航模式来适应宽的logo(比标准的图标宽)

参考

• setDisplayOptions(int)

• setDisplayOptions(int, int)

常量值: 1 (0x00000001)


public static final int NAVIGATION_MODE_LIST

Since: API Level 11

导航模式列表。代替静态的文本模式。例如:显示一个下拉列表。

常量值: 1 (0x00000001)


public static final int NAVIGATION_MODE_STANDARD

Since: API Level 11

标准导航模式。由一个logo或图标和标题,还有一个可选的子标题。点击这些元素会派送一个onOptionsItemSelected给主Activity,包括菜单项的ID由一个标识或图标。

常量值: 0 (0x00000000)


public static final int NAVIGATION_MODE_TABS

Since: API Level 11

选卡导航模式。替代文本导航模式,它显示一系列的选卡来实现导航。

常量值: 2 (0x00000002)


公共函数

public abstract void addOnMenuVisibilityListener (ActionBar.OnMenuVisibilityListener listener)

Since: API Level 11

响应菜单可视化属性改变的监听器。

参数

Listener  	新的监听器


public abstract void addTab (ActionBar.Tab tab, boolean setSelected)

Since: API Level 11

添加选卡,会添加到最后

参数

tab	        选卡
setSelected	添加的选卡处于被选中就为ture。


public abstract void addTab (ActionBar.Tab tab, int position)

Since: API Level 11

指定选卡的位置插入选卡。如果是第一个选卡,默认是选中状态。

参数

Tab        选卡
Position   选卡的位置


public abstract void addTab (ActionBar.Tab tab, int position, boolean setSelected)

Since: API Level 11

可以指定位置插入选卡

参数

Tab            选卡
Position       选卡的位置
setSelected    是否处于选中状态,如果是为ture


public abstract void addTab (ActionBar.Tab tab)

Since: API Level 11

添加选卡。添加到列表的最后。如果是第一个选卡,哪么它默认处于选中状态。

参数

tab  选卡


public abstract View getCustomView ()

Since: API Level 11

返回值

当前用户自定义的视图


public abstract int getDisplayOptions ()

Since: API Level 11

返回值

当前显示项的集合


public abstract int getHeight ()

Since: API Level 11

获取当前ActionBar的高度

返回值

ActionBar的高度


public abstract int getNavigationItemCount ()

Since: API Level 11

导航项的数量。

返回值

导航项的数量


public abstract int getNavigationMode ()

Since: API Level 11

当前导航模式,可以是以下的值:

•	NAVIGATION_MODE_STANDARD
•	NAVIGATION_MODE_LIST
•	NAVIGATION_MODE_TABS

返回值

当前导航模式


public abstract int getSelectedNavigationIndex ()

Since: API Level 11

选中项的位置

返回值

选项的位置


public abstract ActionBar.Tab getSelectedTab ()

Since: API Level 11

返回当前选中的标签,当前需要是标签导航模式,并且至少要有一个标签。

返回值

当前选中的标签或null


public abstract CharSequence getSubtitle ()

Since: API Level 11

标准模式下ActionBar的子标题。如果getNavigationMode()没有返回NAVIGATION_MODE_STANDARD就返回null

返回值

•	当前ActionBar的子标题或是null。


public abstract ActionBar.Tab getTabAt (int index)

Since: API Level 11

指定索引的标签

参数

index    索引值的范围是0—


public abstract int getTabCount ()

Since: API Level 11

在ActionBar里注册的选卡的数量

返回值

•	选卡数量


public Context getThemedContext ()

Since: API Level 14

返回ActionBar里和创建的视图匹配的主题的Context。如果扩大或实例化自定义ActionBar里的视图,你使用这个函数来返回Context。(包括导航模式的适配器。)

返回值

• 	创建视图的主题Context。


public abstract CharSequence getTitle ()

Since: API Level 11

标准模式下ActionBar的标题。如果getNavigationMode()函数没有返回NAVIGATION_MODE_STANDARD就返回null。

返回值

ActionBar的标题或null。


public abstract void hide ()

Since: API Level 11

如果ActionBar是显示的就隐藏。如果窗口没有FEATURE_ACTION_BAR_OVERLAY属性,就会重置窗口来产生新的空间以便显示ActionBar。

你可以让ActionBar使用覆盖属性通过来隐藏ActionBar,而不是直接调用这个函数。隐藏ActionBar通过系统的UI标识可以让ActionBar更加无缝的隐藏。


public abstract boolean isShowing ()

Since: API Level 11

返回值

如何ActionBar是显示的返回true。否则是false。


public abstract ActionBar.Tab newTab ()

Since: API Level 11

创建返回一个新的ActionBar。这个选卡不包含于ActionBar里,除非选卡被添加。

通常,选卡用于切换Fragment 对象。如下是实现选卡的代码:

这里有代码

返回值

•	新的选卡

参阅

•	addTab(Tab)


public abstract void removeAllTabs ()

Since: API Level 11

移除选卡并且当前的选卡设置为未选中。


public abstract void removeOnMenuVisibilityListener (ActionBar.OnMenuVisibilityListenerlistener)

Since: API Level 11

移除一个菜单的可视监听器。这个监听器不再接收菜单的可视化变化。

参数

listener  需要移除的监听器


public abstract void removeTab (ActionBar.Tab tab)

Since: API Level 11

从ActionBar里移除选卡。如果移除选卡是处于选中状态,就会反选并且选中另一个选卡。

参数

tab 需要移除的选卡


public abstract void removeTabAt (int position)

Since: API Level 11

移除选卡。如果移除选卡是处于选中状态,就会反选并且选中另一个选卡。

参数

position需要移除指定位置的选卡


public abstract void selectTab (ActionBar.Tab tab)

Since: API Level 11

选中指定的选卡。如果ActionBar没有,就会添加一个。

注意:如果你想通过索引选择,使用函数setSelectedNavigationItem(int)。

参数

tab选中的选卡


public abstract void setBackgroundDrawable (Drawable d)

Since: API Level 11

设置ActionBar的背景。用于主ActionBar。

参数

d	背景

参阅

•	setStackedBackgroundDrawable(Drawable)
•	setSplitBackgroundDrawable(Drawable)


public abstract void setCustomView (int resId)

Since: API Level 11

设置ActionBar为自定义的导航模式,提供一个自定义的视图。

在程序的图标和任何动作按钮之间显示自定义的导航视图,或许使用任何可用的空间。自定义导航模式通常是一个浏览器,它包含自动填充地址的控件,或其它没有提供转换导航模式的导航机制。

设置显示选项DISPLAY_SHOW_CUSTOM可以控制自定义视图被显示。

参数

resId	填充ActionBar布局的资源ID

参阅

•	setDisplayOptions(int, int)



public abstract void setCustomView (View view)

Since: API Level 11

设置ActionBar为自定义模式,提供一个自定义的视图。视图在程序的图标和任何动作按钮之间,也可以使用任何可用空间。通常用于如:一个浏览器,包括一个自动填充的地址栏。

参数

view	ActionBar里自定义模式的视图



public abstract void setCustomView (View view, ActionBar.LayoutParams layoutParams)

Since: API Level 11

视图在程序图标和任何动作按钮之间出现,也可以使用任何空间。通常用于如:一个浏览器,包括一个自动填充的地址栏。

需要设置显示选项DISPLAY_SHOW_CUSTOM。

参数

view	ActionBar里的自定义导航模式
layoutParams	自定义视图以什么布局显示在ActionBar里

参阅

•	setDisplayOptions(int, int)


public abstract void setDisplayHomeAsUpEnabled (boolean showHomeAsUp)

Since: API Level 11

home是否作为up使用。如果点击‘home’返回上一级界面而不是主界面,就设置为true。一次设置多个显示模式阅读setDisplayOptions函数。

参数showHomeAsUp点击‘home’返回上一级界面而不是app的主界面,就设置为true

参数

•	setDisplayOptions(int)
•	setDisplayOptions(int, int)


public abstract void setDisplayOptions (int options, int mask)

Since: API Level 11

设置显示模式。通过掩码指定。可以通过位选项修改所有的模式,阅读 setDisplayOptions(int)。

例如:setDisplayOptions(0, DISPLAY_SHOW_HOME)会禁用选项DISPLAY_SHOW_HOME 。setDisplayOptions(DISPLAY_SHOW_HOME, DISPLAY_SHOW_HOME | DISPLAY_USE_LOGO)会启用DISPLAY_SHOW_HOME和 DISPLAY_USE_LOGO。

参数

options	在ActionBar里,通过常量来定义结合位
mask	声明显示选项的位掩码


public abstract void setDisplayOptions (int options)

Since: API Level 11

设置显示选项。一次修改所有的显示选项。修改有限子集显示选项,阅读setDisplayOptions(int, int)。

参数

options ActionBar里通过DISPLAY_常量定义的结合位。


public abstract void setDisplayShowCustomEnabled (boolean showCustom)

Since: API Level 11

如果设置,自定义视图显示。

如果一次设置多个显示选项,参阅setDisplayOptions函数。

参数

showCustom	如果当前自定义视图需要显示,就为true。否则false。

参考

•	setDisplayOptions(int)
•	setDisplayOptions(int, int)



public abstract void setDisplayShowHomeEnabled (boolean showHome)

Since: API Level 11

home按钮是否在ActionBar里显示。home作为ActionBar的图标或logo显示。

如果一次设置多个显示选项,参阅setDisplayOptions函数。

参数

showHome	如果显示home,否则false。

参阅

•	setDisplayOptions(int)
•	setDisplayOptions(int, int)


public abstract void setDisplayShowTitleEnabled (boolean showTitle)

Since: API Level 11

Activity的标题或子标题是否显示。

如果一次设置多个显示选项,参阅setDisplayOptions函数。

参数

showTitle	如果显示标题或子标题就为true。

参阅

•	setDisplayOptions(int)
•	setDisplayOptions(int, int)



public abstract void setDisplayUseLogoEnabled (boolean useLogo)

Since: API Level 11

是否显示Activity的logo而不是图标。logo通常更宽,更细腻。

如果一次设置多个显示选项,参阅setDisplayOptions函数。

参数

useLogo	如果使用logo为true,使用图标为false。

参阅

•	setDisplayOptions(int)
•	setDisplayOptions(int, int)



public void setHomeButtonEnabled (boolean enabled)

Since: API Level 14

在ActionBar的正中是否显示‘home’。(注意:这是应用程序的home或上一级按钮,不是系统的主界面按钮。)

在API14以前,默认是true,程序需要调用这函数来启用home/上一级。设置DISPLAY_HOME_AS_UP显示选项将自动地启用主界面按钮。

参数

enabled启用home按钮为true,否则为false。


public abstract void setIcon (Drawable icon)

Since: API Level 14

使用图标来显示home按钮。ActionBar使用一个指定风格的图标或是Activity的默认图标。home按钮是否通过显示选项DISPLAY_USE_LOGO显示一个图标或是logo。

参数

icon	图标

参阅

•	setDisplayUseLogoEnabled(boolean)
•	setDisplayShowHomeEnabled(boolean)


public abstract void setIcon (int resId)

Since: API Level 14

在home域现实的图标。ActionBar使用一个指定风格的图标或是Activity的默认图标。home按钮是否通过显示选项DISPLAY_USE_LOGO显示一个图标或是logo。

参数

resId	图标的资源ID

参阅

•	setDisplayUseLogoEnabled(boolean)
•	setDisplayShowHomeEnabled(boolean)


public abstract void setListNavigationCallbacks (SpinnerAdapter adapter,ActionBar.OnNavigationListener callback)

Since: API Level 11

列表导航模式下设置适配器和回调。适配器将为列表的当前选中项提供视图。(这将会显示的不同。)当用户改变当前列表选项会通过OnNavigationListener通知用户。

参数

adapter 提供显示当前模式域和弹出下拉菜单的视图
callback 当用户选择导航项的时候,OnNavigationListener将接收到这个事件.


public abstract void setLogo (int resId)

Since: API Level 14

‘home’域显示的logo。ActionBar使用指定的风格的logo或是Activity的默认logo。‘home’域是否显示图标或logo通过显示选项DISPLAY_USE_LOGO来控制。

参数

resId	logo资源的ID

参阅

•	setDisplayUseLogoEnabled(boolean)
•	setDisplayShowHomeEnabled(boolean)



public abstract void setLogo (Drawable logo)

Since: API Level 14

‘home’域显示的logo。ActionBar使用指定的风格的logo或是Activity的默认logo。‘home’域是否显示图标或logo通过显示选项DISPLAY_USE_LOGO来控制。

参数

logo	需要显示的logo

参阅

•	setDisplayUseLogoEnabled(boolean)
•	setDisplayShowHomeEnabled(boolean)


public abstract void setNavigationMode (int mode)

Since: API Level 11

设置当前导航模式

参数

Mode	新模式

参阅

•	NAVIGATION_MODE_STANDARD
•	NAVIGATION_MODE_LIST
•	NAVIGATION_MODE_TABS


public abstract void setSelectedNavigationItem (int position)

Since: API Level 11

选中指定位置的导航项。

参数

position 选中指定位置的选项


public void setSplitBackgroundDrawable (Drawable d)

Since: API Level 14

设置ActionBar的分隔背景。在分隔背景上包含菜单如:动作按钮、设备配置。

你可以通过uiOptions来启用分隔ActionBar。参数

d	d  拆分条的背景



public void setStackedBackgroundDrawable (Drawable d)

Since: API Level 14

设置ActionBar的重叠背景。一些设备或配置的时候,会在第二行里显示重叠的背景。

参数

d 重叠的背景


public abstract void setSubtitle (int resId)

Since: API Level 11

ActionBar的子标题。除非 DISPLAY_SHOW_TITLE被设置了,子标题才会显示。

参数

resId	子标题的资源ID

参阅

•	setSubtitle(CharSequence)
•	setDisplayOptions(int, int)


public abstract void setSubtitle (CharSequence subtitle)

Since: API Level 11

ActionBar的子标题。除非 DISPLAY_SHOW_TITLE被设置了,子标题才会显示。不显示子标题就设置为null。

参数

subtitle	子标题

参阅

•	setSubtitle(int)
•	setDisplayOptions(int, int)


public abstract void setTitle (int resId)

Since: API Level 11

设置ActionBar的标题,除非 DISPLAY_SHOW_TITLE被设置了,标题才会显示。

参数

resId	标题资源的ID。

参阅

•	setTitle(CharSequence)
•	setDisplayOptions(int, int)


public abstract void setTitle (CharSequence title)

Since: API Level 11

设置ActionBar的标题,除非 DISPLAY_SHOW_TITLE被设置了,标题才会显示。

参数

title	标题

参阅:

•	setTitle(int)
•	setDisplayOptions(int, int)


public abstract void show ()

Since: API Level 11

如果当前的ActionBar没有显示给用户,就显示ActionBar。如果窗口没有属性FEATURE_ACTION_BAR_OVERLAY,那么就重置程序来产生一个新的可用空间。

如果你通过 View.SYSTEM_UI_FLAG_FULLSCREEN隐藏了ActionBar,你需要直接调用函数。

除非另有说明,这个content是遵守Apache 2.0。更多的细节和限制,阅读 Content License。


译者注 1、格式还没有调整 2、代码没有添加

取自“ http://wikidroid.sinaapp.com/ActionBar”


共有 0人喜欢  共 0条评论
登录 社区
头衔:
确定 取消
编辑头衔
邮箱:
确定 取消
跟踪回复
0条评论
0次被喜欢
 
表情
  • 默认表情
  • 阿狸
    140
    发  布
    按时间排序
    排序方式:
    按时间排序 按热度排序
    还没有评论内容
    更多热评文章
    • 对“overScrollBy”的搜索结果
    • 对“KeyEvent”的搜索结果
    • Android.graphics.Bitmap
    • 对“onKeyUp”的搜索结果
    友言[?]
    表情
    • 默认表情
    • 阿狸
      140
      回  复
          
       
       
          
      wikidroid.sinaapp.com
      33
      评论数
      32
      喜欢数
      22
      用户数
      数据正在加载中...
      友言
      社会化帐号登录

      点击按钮,使用社交帐号评论

        新浪微博   QQ   腾讯微博

      作为游客留言

      Email *

      昵  称

      顶并分享到:
      新浪微博
      新浪微博
      新浪微博
      顶 取消
      个人工具
      • 登录/创建账户
      名字空间
      • 页面
      • 讨论
      变换
      查看
      • 阅读
      • 查看源代码
      • 查看历史
      动作
      导航
      • 首页
      • 社区入口
      • 当前事件
      • 最近更改
      • 随机页面
      • 帮助
      • 官方微博
      Android开发者
      • Android软件开发工具包
      • Android开发者指南
      • Android中文API
      • Android资源
      • Android设计
      • Android专用搜索
      工具箱
      • 链入页面
      • 链出更改
      • 特殊页面
      • 可打印版

      这篇关于ActionBar各种属性的详细解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



      http://www.chinasem.cn/article/1003019

      相关文章

      Java调用DeepSeek API的最佳实践及详细代码示例

      《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

      Spring AI集成DeepSeek的详细步骤

      《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2

      Goland debug失效详细解决步骤(合集)

      《Golanddebug失效详细解决步骤(合集)》今天用Goland开发时,打断点,以debug方式运行,发现程序并没有断住,程序跳过了断点,直接运行结束,网上搜寻了大量文章,最后得以解决,特此在这... 目录Bug:Goland debug失效详细解决步骤【合集】情况一:Go或Goland架构不对情况二:

      Python itertools中accumulate函数用法及使用运用详细讲解

      《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

      Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

      《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

      Spring Boot整合log4j2日志配置的详细教程

      《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

      Springboot 中使用Sentinel的详细步骤

      《Springboot中使用Sentinel的详细步骤》文章介绍了如何在SpringBoot中使用Sentinel进行限流和熔断降级,首先添加依赖,配置Sentinel控制台地址,定义受保护的资源,... 目录步骤 1: 添加 Sentinel 依赖步骤 2: 配置 Sentinel步骤 3: 定义受保护的

      在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

      《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

      C语言中自动与强制转换全解析

      《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

      MySQL 缓存机制与架构解析(最新推荐)

      《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查