IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> android 屏幕适配解决方案 -> 正文阅读

[移动开发]android 屏幕适配解决方案

适配方案一

//    今日头条屏幕适配方案
    implementation 'com.github.JessYanCoding:AndroidAutoSize:v1.2.1'

1、在build.gradle中引用

implementation 'com.github.JessYanCoding:AndroidAutoSize:v1.2.1'
plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
}

android {
    compileSdk 32

    defaultConfig {
        applicationId "com.nyw.myuiapplication"
        minSdk 21
        targetSdk 32
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
}

dependencies {

    implementation 'androidx.core:core-ktx:1.7.0'
    implementation 'androidx.appcompat:appcompat:1.3.0'
    implementation 'com.google.android.material:material:1.4.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
//    今日头条屏幕适配方案
    implementation 'com.github.JessYanCoding:AndroidAutoSize:v1.2.1'
}

新创建的项目需要在settings.gradle中配制,旧项目创建的在build.gradle中配制,在这里是新创建的项目,如下

maven { url "https://jitpack.io" }
pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
        maven { url "https://jitpack.io" }
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven { url "https://jitpack.io" }
    }
}

rootProject.name = "MyUiApplication"
include ':app'

?2、AndroidManifest.xml? 中添加配制,这里的宽高设置可以问设计师要设计图尺寸根据实际填写

<!-- 屏幕适配宽度 -->
<meta-data
    android:name="design_width_in_dp"
    android:value="360"/>
<!-- 屏幕适配高度度 -->
<meta-data
    android:name="design_height_in_dp"
    android:value="640"/>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.nyw.myuiapplication">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyUiApplication">
        <activity
            android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <!-- 屏幕适配宽度 -->
        <meta-data
            android:name="design_width_in_dp"
            android:value="360"/>
        <!-- 屏幕适配高度度 -->
        <meta-data
            android:name="design_height_in_dp"
            android:value="640"/>

    </application>

</manifest>

简单的配制已经完成,框架可以自行运行,可以使用了。布局文件中直接使用dp,框架可以运行适配。更多功能请查看大神的 文章。如下

GitHub - JessYanCoding/AndroidAutoSize:🔥一种低成本的Android屏幕适配解决方案(今日头条屏幕适配方案终极版,一个极低成本的Android屏幕适配方案)。

今日头条屏幕适配方案终极版正式发布! - 简书 (jianshu.com)

?适配方案二

使用smallestWidth适配屏幕

生成?dimens.xml 文件,可以使用as自带的SmallestWidth Dimens插件完成,安装插件如下图

安装完成后,重启开发工具,在Tools菜单中可以看到插件,如下图

?插件启动后可自主选择要在那个moudel下生成values-sw<N>dp文件夹,默认有一些文件夹,你也可以通过Add smallestWidth添加需要的尺寸。Design Width 为你设计稿的尺寸是必填项,我在这里填写最小单位360。

?

更多详细的可查看大神文章参考

一种非常好用的屏幕适配—smallestWidth - 知乎 (zhihu.com)

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-03-17 22:19:09  更:2022-03-17 22:19:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 19:16:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码