Android平台Chromium非扩展UI开发:UI元素组合及组件定义位置查询
Android版Chromium自定义UI代码位置查询
我想在Android平台的Chromium中添加UI功能(不通过扩展实现),已经查阅过Chromium源码,但目前看的文件都和需求无关。说明一下:我不懂C++,但能识别相关代码。
我要找的是实际编写UI代码的位置,用HTML类比的话,大致结构是:
<Main> <Tabs /> <AddressBar /> <BookmarksBar /> <Content /> </Main>
我不要求是XML/HTML格式,Android里也可能是代码方式实现,示例如下:
// 仅作演示,非实际代码 Layout layout = new Layout() Text text = new Text() layout.add(text)
这些UI元素的组合代码在哪里?
我已经检查过以下目录及其部分子目录:
- chrome/
- chrome/browser/
- ui/
- ui/views/
但没找到想要的内容。比如我想查看首页相关代码,检查了以下路径也没收获:
- chrome/browser/ui/webui/app_home/app_home_ui.cc
- chrome/browser/new_tab_page目录
请问我可以在哪里找到:
- UI元素的组合代码位置?
- UI组件的定义位置?
一、UI元素组合代码位置(主界面布局)
Android版Chromium的主界面核心布局逻辑都在Java层代码(Android端UI主要用Java/Kotlin实现),重点看这些目录和文件:
chrome/android/java/src/org/chromium/chrome/browser/app/- ChromeActivity.java:主入口Activity,负责初始化并组合Tabs、地址栏、内容区等所有核心UI组件
- ChromeRootView.java:整个主界面的根视图容器,所有顶级UI元素都在这里添加
chrome/android/java/src/org/chromium/chrome/browser/toolbar/- ToolbarCoordinator.java:协调地址栏、标签栏区域的组件组合与交互逻辑
二、各UI组件的定义位置
- 标签栏(Tabs)
- 单个标签定义:
chrome/android/java/src/org/chromium/chrome/browser/tabs/Tab.java - 标签栏视图实现:
chrome/android/java/src/org/chromium/chrome/browser/tabs/TabLayout.java
- 单个标签定义:
- 地址栏(AddressBar)
- 地址输入框核心:
chrome/android/java/src/org/chromium/chrome/browser/toolbar/Omnibox.java - 地址栏容器:
chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar.java
- 地址输入框核心:
- 书签栏(BookmarksBar)
- 视图实现:
chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarksBar.java
- 视图实现:
- 内容区(Content)
- Web内容容器:
chrome/android/java/src/org/chromium/chrome/browser/contents/ContentsContainer.java
- Web内容容器:
三、首页(新标签页)相关代码
你之前查看的是桌面版路径,Android端新标签页代码在:
chrome/android/java/src/org/chromium/chrome/browser/newtabpage/:核心实现文件为NewTabPage.java- WebUI类型的首页逻辑:
chrome/android/java/src/org/chromium/chrome/browser/webui/new_tab_page/
内容的提问来源于stack exchange,提问作者captainskippah
相关产品推荐
相关产品推荐

