1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Android 10 SystemUI 如何隐藏状态栏输入法图标

Android 10 SystemUI 如何隐藏状态栏输入法图标

时间:2018-08-29 15:45:14

相关推荐

Android 10 SystemUI 如何隐藏状态栏输入法图标

代码路径:

frameworks/base/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java

在InputMethodManagerService.java文件中updateStatusIcon方法中将mStatusBar.setIconVisibility(mSlotIme, true)的true改为false

@BinderThreadprivate void updateStatusIcon(@NonNull IBinder token, String packageName,@DrawableRes int iconId) {synchronized (mMethodMap) {if (!calledWithValidTokenLocked(token)) {return;}final long ident = Binder.clearCallingIdentity();try {if (iconId == 0) {if (DEBUG) Slog.d(TAG, "hide the small icon for the input method");if (mStatusBar != null) {mStatusBar.setIconVisibility(mSlotIme, false);}} else if (packageName != null) {if (DEBUG) Slog.d(TAG, "show a small icon for the input method");CharSequence contentDescription = null;try {// Use PackageManager to load labelfinal PackageManager packageManager = mContext.getPackageManager();contentDescription = packageManager.getApplicationLabel(mIPackageManager.getApplicationInfo(packageName, 0,mSettings.getCurrentUserId()));} catch (RemoteException e) {/* ignore */}if (mStatusBar != null) {mStatusBar.setIcon(mSlotIme, packageName, iconId, 0,contentDescription != null? contentDescription.toString() : null);mStatusBar.setIconVisibility(mSlotIme, true);}}} finally {Binder.restoreCallingIdentity(ident);}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。