如何在代码中处理不同的 API 级别

How to deal with different API levels in code

我从 material 设计开始开发。

我的布局和样式分为棒棒糖之前的设备和棒棒糖及更高版本的布局和样式。

例如我使用

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
style="@style/Toolbar" />

在我的 pre-lollipop 布局文件和

<Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
style="@style/Toolbar" />

在另一个。 因此,我不得不在相关 activity class 中使用两个不同的对象。这让我很困惑,导致代码混乱。

我知道如何通过

区分API级别
Build.VERSION.SDK_INT

不过,解决这个问题的最佳方法是什么?

感谢您的回答

我通常使用android.support.v7.widget.Toolbar,因为它与其他API兼容。如果你在代码中经常使用它,常规的会给你带来很多问题。