Android 自适应屏幕技术

news/2024/10/18 6:08:36/
  1. layout自适应屏幕大小

Android手机屏幕大小不一,有480x320,640x360,800x480.怎样才能让App自动适应不同的屏幕呢? 其实很简单,只需要在res目录下创建不同的layout文件夹,比如:layout-640x360,layout-800x480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。

注意:包的命名要求,大数值放前面:layout-640x360,layout-800x480

  1. 图片自适应屏幕大小

前的版本中,只有一个drawable,而2.1版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。

  1. drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
  2. drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
  3. drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
  4. drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)

系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。

  1. 字体自适应屏幕大小

只需要在res目录下创建不同的values文件夹,比如:values-640x360,values-800x480,所有的values文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的values进行使用。

  1. layout自适应屏幕方向
  1. 横屏竖屏自动切换

可以在res目录下建立layout-portlayout-land两个目录,里面分别放置竖屏和横屏两种布局文件,这样在手机屏幕方向变化的时候系统会自动调用相应的布局文件,避免一种布局文件无法满足两种屏幕显示的问题。

  1. 禁用自动切换

只需要在AndroidManifest.xml文件中对应的activity加入android:screenOrientation属性限制:

  1. 限制此页面横屏显示:Android:screenOrientation="landscape"
  2. 限制此页面数竖屏显示:

http://www.ppmy.cn/news/1514804.html

相关文章

论文浅尝 | 超越实体对齐: 通过实体关系协同实现完整的知识图谱对齐

笔记整理:米尔扎提阿力木,天津大学硕士,研究方向为大模型 论文链接:https://arxiv.org/abs/2407.17745 摘要 知识图谱对齐(Knowledge Graph Alignment, KGA)旨在整合来自多个来源的知识,以解决单个知识图谱在覆盖范围和…

【设计模式】策略模式和代理模式

策略模式 策略模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的责任和算法的实现分割开来&#xf…

模板之家 mymoban

模板之家mymoban.com 是一个提供各种网站模板资源的平台,涵盖了多种类型的模板,包括网页模板、PPT模板、Word模板、Excel模板等。此外,该网站还提供免费下载服务,用户可以下载到网站模板、小程序模板、JS特效、前端代码以及建站教…

kafka的一个有趣问题(BUG)

这是我的第104篇原创文章 问题由来 在使用kafka时,创建topic,对某个topic进行扩分区的操作,想必大家肯定都使用过。尤其是集群进行扩容时,对流量较大的topic进行扩分区操作。一般而言,期望的效果是:新扩的分…

数学建模学习(115):主成分分析(PCA)与Python实践

文章目录 一.主成分分析简介1.1 数学背景与维度诅咒1.2 PCA的定义与应用二.协方差矩阵——特征值和特征向量三.如何为数据集选择主成分数量四.特征提取方法五.LDA——与PCA的区别六.PCA的应用七.PCA在异常检测中的应用八.总结一.主成分分析简介 1.1 数学背景与维度诅咒 主成成…

C语言 之 字符相关函数

文章目录 字符分类函数字符转换函数 本章内容主要讲的是c语言中的字符相关的一些函数的作用用法和使用 为了方便我们对字符的各种操作,C语⾔标准库中提供了⼀系列库函数,我们大概可以根据其功能分成两类函数 字符分类函数 C语言中有一系列函数是专门用…

QT:Qt与ECharts

介绍ECharts ECharts是一款基于JavaScript的数据可视化图表库,由百度团队最初开发,并在2018年初捐赠给Apache基金会,成为ASF孵化级项目。随着项目的不断发展,ECharts在2021年1月26日正式毕业,成为Apache顶级项目 链接…

IOS半越狱工具nathanlr越狱教程

简介 nathanlr 是一款半越狱工具,不是完整越狱。 半越狱只能使用一些系统范围的插件。 无法做到完整越狱 Dopamine 越狱一样插件兼容性。 nathanlr支持 iOS 16.5.1 – 16.6.1 系统。 支持 A12 及以上设备。 肯定有人问,为什么仅仅支持这些系统&#xff…