大部分还看不懂,只记录接触到的一些

Android N 通话界面_InCallActivity_Yigit_dev的博客-CSDN博客

android N 拨打电话流程(MO)_Yigit_dev的博客-CSDN博客

-------------------------------------

平板上去掉了一些ui的功能------------
打电话的ui对应的activity是com.android.incallui.InCallActivity里面是fragment组成的界面,看call_card_fragment.xml里面的一些按钮,看callButtonFragment.java-----------
去掉了一些按钮,直接把按钮数量设为了0代码里面检测按钮数量,然后显示预设个数,多余的折叠起来,有一个回调函数updateButtonStates   (我说怎么在xml里面设置visibility没有用!!)改没改几行代码,看看试试了大半天其他的不写了,代码很多没看过
diff --git a/packages/apps/Dialer/InCallUI/res/layout-w500dp-land/call_card_fragment.xml b/packages/apps/Dialer/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
index 4d59cb7..60b4732 100644
--- a/packages/apps/Dialer/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
+++ b/packages/apps/Dialer/InCallUI/res/layout-w500dp-land/call_card_fragment.xml
@@ -98,7 +98,7 @@<!-- Call recorder infor --><RelativeLayout
-        android:layout_width="wrap_content"
+        android:layout_width="200dp"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:layout_alignParentLeft="true">
@@ -159,7 +159,7 @@<LinearLayoutandroid:id="@+id/primary_call_info_container"android:layout_alignParentStart="true"
-        android:layout_width="wrap_content"
+        android:layout_width="1024dp"android:layout_height="match_parent"android:layout_above="@id/secondary_call_info"android:orientation="vertical"
@@ -199,16 +199,16 @@<!-- Margin left and centerHorizontal don't work well together, so use a Space instead. --><Spaceandroid:id="@+id/floating_end_call_action_button_margin_left"
-        android:layout_width="@dimen/end_call_button_margin_left"
+      android:layout_width="@dimen/end_call_button_margin_left"android:layout_height="wrap_content"
-        android:layout_centerHorizontal="true" />
+        android:layout_marginStart="480dp" /><FrameLayoutandroid:id="@+id/floating_end_call_action_button_container"android:layout_width="@dimen/end_call_floating_action_button_diameter"android:layout_height="@dimen/end_call_floating_action_button_diameter"android:background="@drawable/fab_red"
-        android:layout_toRightOf="@id/floating_end_call_action_button_margin_left"
+      android:layout_toRightOf="@id/floating_end_call_action_button_margin_left"android:layout_alignParentBottom="true"android:layout_marginBottom="@dimen/end_call_button_margin_bottom"><ImageButton android:id="@+id/floating_end_call_action_button"
diff --git a/packages/apps/Dialer/InCallUI/res/layout/call_button_fragment.xml b/packages/apps/Dialer/InCallUI/res/layout/call_button_fragment.xml
index 3bc306e..d96bb1e 100644
--- a/packages/apps/Dialer/InCallUI/res/layout/call_button_fragment.xml
+++ b/packages/apps/Dialer/InCallUI/res/layout/call_button_fragment.xml
@@ -83,6 +83,7 @@<ToggleButton android:id="@+id/dialpadButton"style="@style/InCallCompoundButton"android:background="@drawable/btn_compound_dialpad"
+          android:visibility="invisible"android:contentDescription="@string/onscreenShowDialpadText_unselected" /><!-- MIDDLE RIGHT SLOT ================================================================= -->
diff --git a/packages/apps/Dialer/InCallUI/res/layout/call_card_fragment.xml b/packages/apps/Dialer/InCallUI/res/layout/call_card_fragment.xml
index 3a1c61d..c877985 100644
--- a/packages/apps/Dialer/InCallUI/res/layout/call_card_fragment.xml
+++ b/packages/apps/Dialer/InCallUI/res/layout/call_card_fragment.xml
@@ -49,9 +49,9 @@<!-- Placeholder for the dialpad which is replaced with the dialpad fragment when shown. --><FrameLayoutandroid:id="@+id/answer_and_dialpad_container"
-        android:layout_width="match_parent"
+        android:layout_width="300dp"android:elevation="@dimen/dialpad_elevation"
-        android:layout_height="match_parent" />
+        android:layout_height="300dp" /><!-- Secondary "Call info" block, for the background ("on hold") call. --><include layout="@layout/secondary_call_info"
diff --git a/packages/apps/Dialer/InCallUI/res/values-sw410dp/config.xml b/packages/apps/Dialer/InCallUI/res/values-sw410dp/config.xml
index a57f867..7db0dc4 100644
--- a/packages/apps/Dialer/InCallUI/res/values-sw410dp/config.xml
+++ b/packages/apps/Dialer/InCallUI/res/values-sw410dp/config.xml
@@ -17,5 +17,5 @@<resources><!-- Determines the maximum number of buttons visible on the call card.  Any buttons over thiscount are put into the overflow menu. -->
-    <integer name="call_card_max_buttons">6</integer>
-</resources>
\ No newline at end of file
+    <integer name="call_card_max_buttons">0</integer>
+</resources>
diff --git a/packages/apps/Dialer/InCallUI/res/values-w500dp-land/dimens.xml b/packages/apps/Dialer/InCallUI/res/values-w500dp-land/dimens.xml
index 42b0886..26ffd51 100644
--- a/packages/apps/Dialer/InCallUI/res/values-w500dp-land/dimens.xml
+++ b/packages/apps/Dialer/InCallUI/res/values-w500dp-land/dimens.xml
@@ -33,5 +33,5 @@<dimen name="video_preview_margin">20dp</dimen>-    <dimen name="end_call_button_margin_left">50dp</dimen>
+    <dimen name="end_call_button_margin_left">0dp</dimen></resources>
diff --git a/packages/apps/Dialer/InCallUI/res/values/dimens.xml b/packages/apps/Dialer/InCallUI/res/values/dimens.xml
index 357c582..f7160f9 100644
--- a/packages/apps/Dialer/InCallUI/res/values/dimens.xml
+++ b/packages/apps/Dialer/InCallUI/res/values/dimens.xml
@@ -113,7 +113,7 @@<!-- Height of translucent shadow effect --><dimen name="translucent_shadow_height">2dp</dimen>-    <dimen name="end_call_button_margin_bottom">2dp</dimen>
+    <dimen name="end_call_button_margin_bottom">155dp</dimen><dimen name="call_card_anim_translate_y_offset">50dp</dimen>diff --git a/packages/apps/Dialer/InCallUI/src/com/android/incallui/CallButtonFragment.java b/packages/apps/Dialer/InCallUI/src/com/android/incallui/CallButtonFragment.java
index 068b9b0..8a7d69b 100755
--- a/packages/apps/Dialer/InCallUI/src/com/android/incallui/CallButtonFragment.java
+++ b/packages/apps/Dialer/InCallUI/src/com/android/incallui/CallButtonFragment.java
@@ -185,6 +185,7 @@ public class CallButtonFragmentmMuteButton.setOnClickListener(this);mShowDialpadButton = (CompoundButton) parent.findViewById(R.id.dialpadButton);mShowDialpadButton.setOnClickListener(this);
+      mShowDialpadButton.setVisibility(View.INVISIBLE);mHoldButton = (CompoundButton) parent.findViewById(R.id.holdButton);mHoldButton.setOnClickListener(this);mSwapButton = (ImageButton) parent.findViewById(R.id.swapButton);
@@ -264,6 +265,7 @@ public class CallButtonFragment} else if (id == R.id.swapButton) {getPresenter().swapClicked();} else if (id == R.id.dialpadButton) {
+          Log.e("QYC", "qyc, dialpad...1111");getPresenter().showDialpadClicked(!mShowDialpadButton.isSelected());} else if (id == R.id.addParticipant) {getPresenter().addParticipantClicked();
@@ -622,19 +624,20 @@ public class CallButtonFragmentbutton.setVisibility(View.VISIBLE);prevVisibleButton = button;prevVisibleId = i;
-                } else {
-                    if (menu == null) {
-                        menu = getPopupMenu();
-                    }
+                } else {
+                  //qyc
+                    //if (menu == null) {
+                    //    menu = getPopupMenu();
+                    //}// Collapse the current button into the overflow menu. If is the first visible// button that exceeds the threshold, also collapse the previous visible button// so that the total number of visible buttons will never exceed the threshold.
-                    if (prevVisibleButton != null) {
-                        addToOverflowMenu(prevVisibleId, prevVisibleButton, menu);
-                        prevVisibleButton = null;
-                        prevVisibleId = -1;
-                    }
-                    addToOverflowMenu(i, button, menu);
+                    //if (prevVisibleButton != null) {
+                    //    addToOverflowMenu(prevVisibleId, prevVisibleButton, menu);
+                    //    prevVisibleButton = null;
+                   //     prevVisibleId = -1;
+                   // }
+                   // addToOverflowMenu(i, button, menu);}} else if (visibility == BUTTON_HIDDEN) {button.setVisibility(View.GONE);
@@ -949,6 +952,8 @@ public class CallButtonFragment: R.string.onscreenShowDialpadText_selected));}}
+
+      mShowDialpadButton.setVisibility(View.INVISIBLE);}@Override

【Android系统】拨号app相关推荐

  1. android app系统的测试_计算机毕设项目003之基于Android系统的App点餐外送系统

    计算机毕设项目之基于Android系统的App点餐外送系统 一. 项目名称 基于Android系统的App点餐外送系统 二. 项目简介 本项目是基于Android系统的手机点餐系统,整个项目分为App ...

  2. android 优秀app界面设计,基于Android系统的App界面设计.doc

    基于Android系统的App界面设计 摘 要:智能手机时代的来临改变了大多数人的生活习惯,时至今日智能手机已经成为了人们工作生活中的一部分,在工作生活中发挥着重要的作用.App作为智能手机应用程序的 ...

  3. android系统手势app,8种iOS手势规定和14种android手势规定详解

    不知道大家对ios系统和android系统的规定的原生手势有哪些吗?看到这样的标题,你能够回答出几个呢? 其实,APP设计师和h5开发工程师对移动设备的手势的了解和理解是非常有必要的.只有掌握了这些平 ...

  4. 【转】android系统的APP消息推送机制

    原文:https://www.jianshu.com/p/f898a2c02b05 参考文章: http://blog.csdn.net/carson_ho/article/details/52862 ...

  5. Android 系统桌面 App —— Launcher 开发

    文章目录 Launcher简介 注册AndroidManifest 使用PackageManager扫描所有app 显示app信息,添加点击事件 Launcher简介 Launcher就是Androi ...

  6. Android系统中APP安装到手机后的文件分析

    一. Android系统APP安装格式 1.1 CAB格式 直接将文件copy到手机里,都可以在手机上执行该CAB文件即可安装. 1.2 EXE格式 EXE格式的程序可分为手机上直接运行(即绿色软件的 ...

  7. Android 系统级APP 升级方案 按键恢复出厂设置

    先敲黑板:(更多内容请关注专栏,支持原创) 概要:本文介绍内容有UBOOT BCB 系统级APP固化到固件 通过UBOOT完成按键触发恢复出厂设置,即恢复系统APP的方案 高质量文章导航 一.坐稳发车 ...

  8. Android 系统级APP 升级方案 OTA全流程

    支持原创,请关注专栏: 高质量文章导航 一.Android ota固件编译 OTA 介绍 OTA ( over the air )升级是 Android 系统提供的标准软件升级方式.它功能强大,提供了 ...

  9. android系统签名app自动更新,【Android 进阶】Apk 使用系统签名

    刚入职的时候,固件中 app 需要在源码中编译,不是很理解,为什么不使用 IDE 编译,然后 copy 到 /system/app/*,咨询导师,得到反馈 app 需要使用系统的权限 在 Androi ...

  10. 由Asset中的double free引发的Android系统及APP崩溃问题分析

    前言 这个问题在来小米之前就遇到并解决过,当时的解决方案与朴老师的初步解决方案一样,本文在之前的初步分析结果之上进一步进行了深入分析,最终得出了当前看起来相对合理并符合原来架构设计的最终方案. 文中引 ...

最新文章

  1. 【ubuntu+opencv3】ubuntu16.04+qt5+opencv3.2.0编译与安装
  2. linux ps aux 结果解释
  3. 安庆机器人编程选_安庆市首届中小学机器人创客竞赛举行 460名选手比智慧拼创新 科技感满满!...
  4. SAP License:PS十日通-超预算自动邮件提醒功能
  5. sessionStorage第一次进入页面显示弹窗
  6. 关于opencv标定的一些疑问,首先声明这篇文章转载于纸异兽,由于暂时联系不到他本人,只好请教各位了。有些问题想请教,各位大神可以留下联系方式帮我解决,万分感谢...
  7. 树莓派linux虚拟键盘,树莓派raspbian安装matchbox-keyboard虚拟键盘
  8. 【樽海鞘算法】基于樽海鞘算法求解多目标问题附matlab代码
  9. 服务器连接电脑显示屏花屏怎么解决,电脑显示器花屏怎么办 电脑显示器花屏解决方法【详解】...
  10. 如何能从自我怀疑中走出来?
  11. 车辆出险理赔记录接口文档
  12. 数据通信与网络:CH5 Analog Transmission
  13. html中div是什么意思
  14. CNN表情识别系统制作(1)----fer2013人脸表情数据集简介
  15. 数据采集:如何使用物联网边缘计算网关采集数据?
  16. Android Drawable图标生成工具
  17. LeetCode_Stack_331. Verify Preorder Serialization of a Binary Tree 验证二叉树的前序序列化(Java)【栈,字符串处理】
  18. 两款简单的拒绝服务攻击工具
  19. hpuoj 1715: 感恩节KK专场——2015年的第一场雪 (暴力)
  20. cnn汇总(1)(2)

热门文章

  1. 计算机科学与技术人工生命,人工生命
  2. 计算机科学是研究什么学问,计算科学最初被认为是算法的学问,学科的基本问题是算法问题。...
  3. workFlow学习总结-----------workFlow简介
  4. 长沙理工计算机竞赛黑马,全国第三!长理紧跟清华、华科成最大黑马!
  5. 深度学习文献汇总|第四十二期
  6. Android P SELinux (四) CTS neverallow处理总结
  7. opencv生成日志_opencv数据写入txt文件
  8. 英文姓名 格式 结构
  9. Unity编辑器扩展——通用组件替换工具
  10. 漏洞复现-electron RCE命令执行CVE-2018-1000006