当前位置: 首页 > news >正文

Android13 控制设置界面 双栏显示或单栏显示

Android 13 设置界面会判断当前屏幕的大小,如果是大屏,则为双栏显示!
我的博客

./packages/apps/Settings/src/com/android/settings/homepage/SettingsHomepageActivity.java@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mIsEmbeddingActivityEnabled = ActivityEmbeddingUtils.isEmbeddingActivityEnabled(this);//这里来进行判断if (mIsEmbeddingActivityEnabled) {final UserManager um = getSystemService(UserManager.class);final UserInfo userInfo = um.getUserInfo(getUser().getIdentifier());if (userInfo.isManagedProfile()) {final Intent intent = new Intent(getIntent()).setClass(this, DeepLinkHomepageActivityInternal.class).addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT).putExtra(EXTRA_USER_HANDLE, getUser());intent.removeFlags(Intent.FLAG_ACTIVITY_NEW_TASK);startActivityAsUser(intent, um.getPrimaryUser().getUserHandle());finish();return;}}setupEdgeToEdge();setContentView(R.layout.settings_homepage_container);.../packages/apps/Settings/src/com/android/settings/activityembedding/ActivityEmbeddingUtils.java
/** Whether to support embedding activity feature. */
public static boolean isEmbeddingActivityEnabled(Context context) {//update textfinal boolean isFlagEnabled = false;//FeatureFlagUtils.isEnabled(context,FeatureFlagUtils.SETTINGS_SUPPORT_LARGE_SCREEN);final boolean isSplitSupported = SplitController.getInstance().isSplitSupported();Log.d(TAG, "isFlagEnabled = " + isFlagEnabled);Log.d(TAG, "isSplitSupported = " + isSplitSupported);return isFlagEnabled && isSplitSupported;
}//当isFlagEnabled和isSplitSupported都为true时为双栏显示,反之则单栏,&&表示可以只修改其中一个为false就ok了

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • go语言day18 reflect反射
  • 数仓建模:DWS层该如何建设?如何设计通用数据模型?
  • 分布式相关理论详解
  • 什么是贝叶斯优化(Bayesian Optimization)?
  • 昇思 25 天学习打卡营第 24 天 | MindSpore Pix2Pix 实现图像转换
  • 50、PHP 实现选择排序
  • 分布式锁的三种实现方式:Redis、基于数据库和Zookeeper
  • C#:枚举及位标志周边知识详解(小白入门)
  • Kafka知识总结(选举机制+控制器+幂等性)
  • 在 Elasticsearch 中实现采集自动扩展
  • Python urllib请求https接口报错
  • python异步编程,协程
  • java中的函数式接口介绍
  • python inf是什么意思
  • Centos安装、迁移gitlab
  • canvas 五子棋游戏
  • Docker 笔记(2):Dockerfile
  • js 实现textarea输入字数提示
  • linux安装openssl、swoole等扩展的具体步骤
  • Redash本地开发环境搭建
  • spring cloud gateway 源码解析(4)跨域问题处理
  • 给第三方使用接口的 URL 签名实现
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 聊聊hikari连接池的leakDetectionThreshold
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 译自由幺半群
  • hi-nginx-1.3.4编译安装
  • ​2020 年大前端技术趋势解读
  • #{}和${}的区别?
  • #QT(TCP网络编程-服务端)
  • $NOIp2018$劝退记
  • (1)虚拟机的安装与使用,linux系统安装
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新
  • (每日一问)设计模式:设计模式的原则与分类——如何提升代码质量?
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .java 9 找不到符号_java找不到符号
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET DevOps 接入指南 | 1. GitLab 安装