Dialer应用修改通话界面

简介: 笔记

通话界面的功能按钮无法显示,要使它显示出来

1、通过AndroidStudio的Layout Inspector查看UI结构


1.png

image.png

通过该功能可以基本判断出它位于id为incall_ui_containerincall_pager里面


2、开始跟踪代码


  1. incall_screen.xml.xml    -->InCallActivity.java  --> R.id.main
  2. transaction.add(R.id.main, inCallScreen.getInCallScreenFragment(), Tags.IN_CALL_SCREEN);
  3. InCallScreen接口,找到它的实现类-->InCallFragment.java
  4. layoutInflater.inflate(R.layout.frag_incall_voice, viewGroup, false)); -->找到布局文件 frag_incall_voice.xml
  5. frag_incall_voice.xml-->R.id.incall_pager 类型为LockableViewPager.java
  6. R.id.incall_pager被设置pager.setAdapter(adapter); 类型为InCallPagerAdapter.java
  7. getItem的实现return InCallButtonGridFragment.newInstance(position);
  8. 打开InCallButtonGridFragment

71   @Override
 72   public View onCreateView(
 73       LayoutInflater inflater, @Nullable ViewGroup parent, @Nullable Bundle bundle) {
 74     View view = inflater.inflate(R.layout.incall_button_grid, parent, false);
 75 
 76     buttons[0] = ((CheckableLabeledButton) view.findViewById(R.id.incall_first_button));
 77     buttons[1] = ((CheckableLabeledButton) view.findViewById(R.id.incall_second_button));
 78     buttons[2] = ((CheckableLabeledButton) view.findViewById(R.id.incall_third_button));
 79     buttons[3] = ((CheckableLabeledButton) view.findViewById(R.id.incall_fourth_button));
 80     buttons[4] = ((CheckableLabeledButton) view.findViewById(R.id.incall_fifth_button));
 81     buttons[5] = ((CheckableLabeledButton) view.findViewById(R.id.incall_sixth_button));
 82 
 83     return view;
 84   }


目录
相关文章
|
7月前
|
移动开发 监控 小程序
mPaaS常见问题之音视频通话微信小程序通话界面录制为画中画模式如何解决
mPaaS(移动平台即服务,Mobile Platform as a Service)是阿里巴巴集团提供的一套移动开发解决方案,它包含了一系列移动开发、测试、监控和运营的工具和服务。以下是mPaaS常见问题的汇总,旨在帮助开发者和企业用户解决在使用mPaaS产品过程中遇到的各种挑战
104 0
|
存储
串口助手(布局,图标,串口号,隐藏界面,显示实时时间)
串口助手(布局,图标,串口号,隐藏界面,显示实时时间)
219 0
|
7月前
|
iOS开发
个推发送消息各字段在系统状态栏显示的信息,点击消息图标激活应用传递的信息,应用在线收到的透传消息信息
个推发送消息各字段在系统状态栏显示的信息,点击消息图标激活应用传递的信息,应用在线收到的透传消息信息
60 0
|
7月前
mPaaS音视频通话中,用户在创建房间时遇到超时提示可能有以下几个原因
【1月更文挑战第7天】【1月更文挑战第34篇】mPaaS音视频通话中,用户在创建房间时遇到超时提示可能有以下几个原因
87 1
|
小程序 JavaScript
小程序一个页面调用多个号码的手机拨号功能
小程序一个页面调用多个号码的手机拨号功能
157 0
|
iOS开发
iOS短信验证码控件,自动输入回调两次解决办法
iOS短信验证码控件,自动输入回调两次解决办法
496 0
关于调起系统日历预填信息问题
最近开发遇到一个问题,需要调起系统日历,添加日历事件,但是会出现有些手机无法预填信息的情况;在这里对这个问题做个小记录;
131 0
关于调起系统日历预填信息问题
|
Linux Shell 程序员
使用终端工具给你的电脑发送弹窗提醒!
使用终端工具给你的电脑发送弹窗提醒!
402 0
使用终端工具给你的电脑发送弹窗提醒!
|
iOS开发
iOS后台音频播放及锁屏界面显示音频信息
iOS后台音频播放及锁屏界面显示音频信息
390 0
iOS后台音频播放及锁屏界面显示音频信息
OPPOR9手机便签怎么设置时间提醒?
阿平一直是OPPO手机的忠实粉丝,OPPO手机性能配置性价比也比较高,又请了很多明星来代言,知名度棒棒哒。 阿平上一个手机是OPPOR7,平日用的比较频繁的系统工具是便签。
1549 0