【04】AI辅助编程完整的安卓二次商业实战-寻找修改替换新UI首页图标-菜单图标-消息列表图标-优雅草伊凡
本次二开布局没有变,但是下一次整体布局会有变,不过本次开发发现朋友圈跳转功能的流程步骤也做了一定的变化。原生项目复杂就复杂于就算一个颜色的改动可能都比较麻烦,不像普通web项目或者vue项目,其次原生项目安卓Android的环境配置是很复杂的,很多人 第一步可以搞一周 甚至一个月都搞不成功,再次之前说了可以用trae辅助我们编程,但是真正的开发和调试还是得Android studio 离开Android studio 原生安卓项目也是没法运行的,至少trae满足不了,vs要满足也比较麻烦,本篇改颜色和主页图标,本项目代码 毫不夸张的说 就是WhatsApp的初期代码,历史大概有15年了。
概述:本项目是一个基于微服务架构的现代即时通讯解决方案。2025年8月进行了大规模技术升级与重构,并于8-9月期间集中进行兼容性调整与Bug修复,旨在提升系统稳定性、可维护性和未来扩展性。
本次升级的核心是将单体服务拆解为独立、可扩展的微服务。
上一篇我们看了 资源管理器,但是没有把内容列出来,
本项目中的图片静态资源主要存储在以下位置:
经过检索查看了 资源所在目录,
然后我们目前先来改首页底部的四个图标,我们需要查看这些 图标 到底是代码直接写的 还是用的图片,因为原生的话也有可能直接画的。
其次把UI本页的切图全部拿到先
经过研究查看,四个菜单栏图标是图片实现方式,那就很好办了
通过查看代码,我已了解到底部四个菜单栏图标(消息、联系、发现、我的)的实现方式,以下是详细说明:
layout_main_footbar.xml
styles.xml
具体实现细节:
tab_chat_normal_bg.xml
中定义了两种状态:<selector
xmlns:android="http://schemas.
android.com/apk/res/android">
<item
android:drawable="@mipmap/
tab_chat_new"
android:state_checked="true
"
android:state_enabled="true
" />
<item
android:drawable="@mipmap/
tab_chat_normal_nor_new"/>
</selector>
找到后开始替换,我用一个简单的方法对应命名到新版UI切图复制粘贴 覆盖
未选中的图标图 在另外的页面才有,通讯录页面的切图我们需要也下载下来。
git pull 拉了一些同事给的兼容性调整
重新编译后发现效果已经呈现
不过也有警告
注: G:\clone\2025qingting—android\imagepicker\src\main\java\com\xzh\imagepicker\activity\ImagePreActivity.java使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
这个只能后面继续处理
现在我们继续替换联系页面的4个图标,这个需要找一下,怎么找呢
搜索联系页面的相关文件,找到包含新朋友、标签、商务号、黑名单按钮的布局文件。
搜索联系页面的布局文件,找到包含这四个按钮的界面定义。
在工作区搜索 ‘contacts|fragment_contacts|activity_contacts’
查看联系页面的主要布局文件,找到包含四个按钮的部分。
skWeiChatBaidu\src\main\res\layout\fragment_contacts.xml 1 - 300
查找这四个按钮引用的图片资源文件的具体路径。
在工作区搜索 ‘icon_xinhaoyou|icon_biaoqian|icon_shangwuhao|icon_heimingdan’
通过这里查看到路径了
在“联系”菜单页面上方的四个按钮图片及其路径如下:
像之前 一样替换即可,
找联系页面的这个地方布局稍微有点变动但是改动不是很大
具体操作
另外这个的尺寸不对我们按照设计图
是20pt左右的宽度,我们先下载切图选最小尺寸的。
这个首先我们还是要找出图片地址先替换图片,
搜索消息页面的主布局文件,找到右上角按钮的实现。
在工作区搜索 ‘fragment_message|activity_message|layout_message_main’
找不到结果
搜索消息页面相关的Java实现文件,找到右上角按钮的代码。
在工作区搜索 ‘消息页面 右上角按钮 功能菜单 加好友 扫一扫 收款’
在工作区搜索 ‘receipt_payment|scanning|add_friends|create_group’
查看消息页面右上角按钮弹出菜单的布局文件,找到四个图标的资源引用。
上面java逻辑要找到如何处理这个,从哪里引用基本上要找到这里
/**
* 扫描他人付款码,弹起收款界面
*/
public class PaymentReceiptMoneyActivity extends BaseActivity {
private String money, words;
private TextView mTransferDescTv, mTransferDescClickTv;
private String paymentCode;
private EditText et_transfer;
private KeyBoad keyBoad;
private boolean isUiCreat = false;
private ShouKuan mReceipt;
private String content = "";
private UserDefinedCircleImageView mAvatarIv;
private TextView mNameTv;
skWeiChatBaidu\src\main\res\layout\popu_message.xml 1 - 150
查找这四个图标在mipmap目录中的具体路径。
在工作区搜索 ‘icon_erweima_shoukuan|icon_saoyisao|icon_add_haoyou|icon_chuangjian_qunliao’
查看mipmap-xhdpi目录中这四个图标的具体路径。
2025qingting—android\skWeiChatBaidu\src\main\res\mipmap-xhdpi
消息页面右上角按钮点击后显示的四个图标的具体路径如下:
替换用小尺寸
我们再次运行看看效果,
效果已经出来了就是布局有限问题
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。