构建一个可以跑在不同版本 Android 平台的软件,是非常复杂和耗时的。为了解决这个问题,Android 推出了 Android Support Library (安卓兼容包),让新的UI控件也可以跑在早期的 Android 版本。最近Android Support Library 更新到v22.1,这一版本主要AppCompat做了一些大的调整。

重构AppCompat

初期AppCompat只是让Actionbar兼容到API 7。在AppCompat 21版本中,加入主题色、Toolbar等功能。显然ActionBarActivity这个名字已经不在适用AppCompat。新版本中,推荐使用AppCompatActivity 代替ActionBarActivity。

android:theme

新版本AppCompat 允许对 Toolbar 使用 android:theme代替 app:theme. 兼容 API11+.


<android.support.v7.widget.Toolbar >"http://schemas.android.com/apk/res/android" android_id="@+id/main_drawer_toolbar" android_layout_width="match_parent" android_layout_height="?attr/actionBarSize" android_layout_below="@+id/main_statusBar" android_background="?attr/colorPrimary" android_translationZ="4dp" android_popupTheme="@style/ThemeOverlay.AppCompat.Light" android_theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>

AppCompatDialog对话框

终于加入MD对话框和新主题theme Theme.AppCompat.Dialog
使用

  AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Dialog");
        builder.setMessage("少数派客户端");
        builder.setPositiveButton("OK", null);
        builder.setNegativeButton("Cancel", null);
        builder.show();

具体效果

图片描述

本文固定链接: http://www.js-code.com/android/android_56792.html