【问题标题】:Apply material design on Android 4.4 KitKat在 Android 4.4 KitKat 上应用材料设计
【发布时间】:2023-03-06 15:24:02
【问题描述】:

我已经尽力为低于 21 的 Android SDK 应用 Material Design,但我失败了。
我下载了appcompat-v7,将其添加到我的maven文件中:

<dependency>
    <groupId>com.android.support</groupId>
    <artifactId>appcompat-v7</artifactId>
    <version>21.0.0</version>
    <type>apklib</type>
</dependency>
<dependency>
    <groupId>com.android.support</groupId>
    <artifactId>appcompat-v7</artifactId>
    <version>21.0.0</version>
    <type>jar</type>
</dependency>

但 Material Design 仍然不可用。 有没有关于如何做的教程?我想做一个类似于 Gmail 5 版的应用程序,但是 SDK 强制我将 API 级别更改为 21。

我只对布局感兴趣。我不想使用任何其他 SDK 21 功能。我正在使用 IntelliJ Idea 和 Maven。我的目标 API 级别是 17

【问题讨论】:

  • 是的,但是在这里您将了解如何为不同的 API 级别创建两种样式。我想在 android 4.4 上使用材料设计并且只使用控件,而不是任何其他 API 21 功能

标签: android maven android-layout material-design


【解决方案1】:

可能,你可以用这个

从 Android 2.2 (API 8) 到现在的 5.0 (API 21) 的材料设计

这里有你需要的:

  1. 工具栏
  2. 小部件的材料设计库(按钮、复选框等

1。工具栏

只要得到这个想法,你就可以开始了。

<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimaryDark"/>

设置指南:http://antonioleiva.com/material-design-everywhere/

示例来源:https://github.com/antoniolg/MaterialEverywhere

要使 Toolbar 工作在较低的 API 11 中,请使用 Theme.AppCompat.Light.NoActionBar将 windowActionBar 设置为 false em>)

<style name="NoActionBarTheme" parent="Theme.AppCompat.Light.NoActionBar">
     ...
</style>

2。材料设计库

这里是 Material Design Library,用于漂亮的按钮等。目前正在大力开发。

指南、代码、示例 - https://github.com/navasmdc/MaterialDesignLibrary

指导如何将库添加到 Android Studio 1.0 - How do I import material design library to Android Studio?

.

我回答你的问题了吗?)

【讨论】:

    【解决方案2】:

    您必须创建 2 个不同的 style.xml 文件,名称相同,然后放在不同的文件夹中。

    第一个,会到这里:

    res/styles.xml

    并且看起来没有对 Material 主题的引用(使用 Holo 主题):

    所以会有这样的事情:

    <style name="AppTheme" parent="android:Theme.Holo.Light"></style>
    

    第二个会在这里:

    res/values-v21/styles.xml
    

    并且将包含对新 Material 主题的引用,并且会:

    <style name="AppTheme" parent="android:Theme.Material.Light"></style>
    

    Android 框架将根据设备支持的 API 自动使用正确的框架(因此在 API 21 设备上它将使用 Material,而在所有其他设备上,它将使用您定义的任何其他内容)。

    参考 (Using Android L Material Design on KitKat)

    【讨论】:

    • 但我想在任何 API 版本中始终显示材料。正如我所提到的,我只想使用控件(按钮、选项卡等)而不是任何其他 API 21 功能。
    • 我认为它会帮助我。我会检查并让你知道。感谢您的链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 2014-09-19
    • 1970-01-01
    相关资源
    最近更新 更多