构建一个可以跑在不同版本 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+.

java
<android.support.v7.widget.Toolbar xmlns:android="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
使用

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

具体效果

图片描述


thursday
116 声望5 粉丝

引用和评论

0 条评论