Design Support Library 28

新增的Design Support Library 28库又新增了几个使用的控件

MaterialButton

    

android:textAppearance貌似必须设置,否则报错

其他属性

属性 介绍
app:backgroundTint 按钮背景着色
app:backgroundTintMode 按钮背景的着色模式
app:icon 按钮图标(在文字左边,不能设置位置)
app:iconSize 按钮图标大小
app:iconPadding 按钮图标的内边距
app:iconTint 按钮图标着色
app:iconTintMode 按钮图标的着色模式
app:additionalPaddingStartForIcon 按钮图标的左内边距
app:additionalPaddingEndForIcon 按钮图标的右内边距
app:strokeColor 按钮边框颜色
app:strokeWidth 按钮边框宽度
app:cornerRadius 按钮圆角角度
app:rippleColor 按钮点击水波纹效果颜色

官网上明确说不要使用background来设置颜色

TintMode

TintMode是改变我们着色的模式。
Mode的取值有六种

  1. add 两层绘制叠加融合
  2. screen 上下层都显示(就像是多了块tint色的玻璃)
  3. src_over tint色覆盖住图片,都显示
  4. src_in 默认 取交集,显示上层
  5. multiply 取两层绘制的交集
  6. src_atop 取下层非交集部分与上层交集部分

具体可以参考PorterDuff.Mode

2018-09-04_105137.png

Chip & ChipGroup

我们一直都是通过自定义控件的形式来实现关键字标签等UI效果的,但是现在原生支持了
简单的示例




        

        
            

以上就完成了一个简单的标签单选,同时注意android:textAppearance="?android:attr/textAppearanceLargeInverse"一定要设置,否则报错。设置checkable属性为true,chip才能有被选中的样式。同时ChipGroup设置了app:singleSelection="true"才能回调下面方法(多选无用),取消选中i为-1。

mChipGroup.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(ChipGroup chipGroup, int i) {
            }
        });

ChipGroup属性速查表

属性 介绍
app:chipSpacing Chip在水平&垂直方向的间距
app:chipSpacingHorizontal Chip在水平方向的间距
app:chipSpacingVertical Chip在垂直方向的间距
app:singleLine 是否单行显示Chip,默认为false
app:singleSelection 是否为单选模式,默认为false

Chip属性

属性 介绍
app:chipBackgroundColor Chip背景颜色
app:chipCornerRadius Chip圆角角度
app:chipStrokeColor Chip边框颜色
app:chipStrokeWidth Chip边框宽度
app:rippleColor Chip点击水波纹效果颜色
app:chipIconEnabled 是否在Chip上显示图标,默认为true
app:chipIcon Chip图标(在文字左边,不能设置位置,一般在checked等于false的时候使用,会跟checkedIcon叠加)
app:chipIconSize Chip图标大小
app:closeIconEnabled 是否显示Chip关闭按钮,默认为false,文字的后面,可以通过mChip.setOnCloseIconClickListener设置监听
app:closeIcon Chip关闭按钮图标
app:closeIconTint Chip关闭按钮着色
app:closeIconSize Chip关闭按钮大小
app:checkedIconEnabled 是否显示Chip选中图标,默认为true
app:checkedIcon Chip选中图标
app:chipStartPadding Chip左内边距
app:chipEndPadding Chip右内边距
app:iconStartPadding Chip图标左内边距
app:iconEndPadding Chip图标右内边距
app:textStartPadding Chip文字左内边距
app:textEndPadding Chip文字右内边距
app:closeIconStartPadding Chip关闭图标左内边距
app:closeIconEndPadding Chip关闭图标右内边距

MaterialCardView

于CardView类似,多了两个属性颜色app:strokeColor,宽度app:strokeWidth。而且是内边框

BottomAppBar

貌似没啥用



    

    



属性 介绍
app:backgroundTint BottomAppBar背景着色
app:fabAlignmentMode FAB位置(居中或居右),默认为居右
app:fabAttached 是否绑定FAB,默认为true
app:fabCradleMargin BottomAppBar与FAB的距离,默认为5dp
app:fabCradleRoundedCornerRadius BottomAppBar与FAB相邻处的圆角角度,默认为8dp
app:fabCradleVerticalOffset FAB在BottomAppBar中的垂直偏移量,默认为0dp

你可能感兴趣的:(Design Support Library 28)