[翻译] AYVibrantButton
AYVibrantButton
https://github.com/a1anyip/AYVibrantButton
AYVibrantButton is a stylish button with iOS 8 vibrancy effect. It is a subclass of UIButton
that has a simple yet elegant appearance and built-in support for UIVisualEffectView
and UIVibrancyEffect
classes introduced in iOS 8. Yet, it can be used on iOS 7 without the vibrancy effect.
AYVibrantButton是一个具有 iOS 8 模糊背景效果的按钮.他继承自 UIButton, 有一个很漂亮的样式, 内置了 iOS8 中新出的 UIVisualEffectView 与 UIVibrancyEffect .当然, 你也可以用在 iOS7 上, 只是没有模糊背景效果而已.
Configurations
Vibrant buttons can be configured with one of the three supported button styles, invert, translucentand fill (see examples below).
该按钮可以配置3种样式.
Some basic properties like icon, text, font, alpha, corner radius, border width and background color (for no vibrancy effect) can all be changed easily.
所有的基本属性,如图片, 文本, 字体, 透明度, 圆角, 以及边缘线条宽度以及背景色等等属性, 都可以进行修改.
The default vibrancy effect is for blur effect UIBlurEffectStyleLight
. It could be set to anyUIVibrancyEffect
instance. For today extensions, it should be set to [UIVibrancyEffect notificationCenterVibrancyEffect]
.
默认的模糊效果是 UIBlurEffectStyleLight , 他可以用来设置任何的 anyUIVibrancyEffect 对象. 现在已经对其进行了很多扩展, 支持 [UIVibrancyEffect notificationCenterVibrancyEffect] .
Note
Though vibrant buttons can be placed anywhere, it is recommended that vibrant buttons with vibrancy effects should be placed in the contentView
of UIVisualEffectView
(except in today view).
UIVisualEffectView
can be created as follows.
虽然这个按钮可以放置在任何地方, 但是呢, 我还是推荐将其放置在 UIVisualEffectView 的 contentView 里面.
- UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]];
- effectView.frame = self.view.bounds;
- [self.view addSubview:effectView];
Installation
CocoaPods
Add the following line to the Podfile
.
你可以用 pod "AYVibrantButton" 来进行安装.
pod "AYVibrantButton"
Manual Installation
Simply add AYVibrantButton.h
and AYVibrantButton.m
to your project.
直接将 AYVibrantButton.h
与 AYVibrantButton.m 拖到你的项目中去即可.
Examples
The following images show the normal and highlighted (being pressed) button appearances.
以下例子演示了正常状态与高亮状态中的按钮的样式.
Invert style with vibrancy effect
- AYVibrantButton *invertButton = [[AYVibrantButton alloc] initWithFrame:CGRectZero style:AYVibrantButtonStyleInvert];
- invertButton.vibrancyEffect = [UIVibrancyEffect effectForBlurEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]];
- invertButton.text = @"Invert";
- invertButton.font = [UIFont systemFontOfSize:18.0];
- [effectView.contentView addSubview:invertButton];
Translucent style with vibrancy effect
- AYVibrantButton *translucentButton = [[AYVibrantButton alloc] initWithFrame:CGRectZero style:AYVibrantButtonStyleTranslucent];
- translucentButton.vibrancyEffect = [UIVibrancyEffect effectForBlurEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]];
- translucentButton.text = @"Translucent";
- translucentButton.font = [UIFont systemFontOfSize:18.0];
- [effectView.contentView addSubview:translucentButton];
Translucent style without vibrancy effect
Changelog
1.0.3
- Added a new button style
AYVibrantButtonStyleFill
- Fixed an issue that setting button alpha removes the vibrancy effect
1.0.2
- Support setting icon image
Creator
Alan Yip
License
The MIT License (MIT)
Copyright (c) 2014 Alan Yip
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
[翻译] AYVibrantButton的更多相关文章
- 《Django By Example》第五章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者@ucag注:大家好,我是新来的翻译, ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- [翻译]开发文档:android Bitmap的高效使用
内容概述 本文内容来自开发文档"Traning > Displaying Bitmaps Efficiently",包括大尺寸Bitmap的高效加载,图片的异步加载和数据缓存 ...
- 【探索】机器指令翻译成 JavaScript
前言 前些时候研究脚本混淆时,打算先学一些「程序流程」相关的概念.为了不因太枯燥而放弃,决定想一个有趣的案例,可以边探索边学. 于是想了一个话题:尝试将机器指令 1:1 翻译 成 JavaScript ...
- 《Django By Example》第三章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第三章滚烫出炉,大家请不要吐槽文中 ...
- 《Django By Example》第二章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:翻译完第一章后,发现翻译第二章的速 ...
- 《Django By Example》第一章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:本人目前在杭州某家互联网公司工作, ...
- 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?
0.前言 虽然很早就知道R被微软收购,也很早知道R在统计分析处理方面很强大,开始一直没有行动过...直到 直到12月初在微软技术大会,看到我软的工程师演示R的使用,我就震惊了,然后最近在网上到处了解和 ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第一章:创建基本的MVC Web站点
在这一章中,我们将学习如何使用基架快速搭建和运行一个简单的Microsoft ASP.NET MVC Web站点.在我们马上投入学习和编码之前,我们首先了解一些有关ASP.NET MVC和Entity ...
随机推荐
- Chapter 3 Phenomenon——8
I turned to sit up, and this time he let me, releasing his hold around my waist and sliding as far f ...
- mysql 导出数据到csv文件的命令
1.导出本地数据库数据到本地文件 mysql -A service_db -h your_host -utest -ptest mysql> select * from t_apps where ...
- Node.js之Express三
端午节3天说没就没了,自己的脚伤都快一个月了还没好,原本想着去桂林或者厦门呢,可计划赶不上变化,看自己公司C#软件工程师的招聘条件有要求MongoDb,年前就打算自己学习下,买的这本书就叫Node.j ...
- C#在.NET编译执行过程
1..NET语言的编译器接受源代码文件,并生成名为程序集的输出文件. 程序集要么是可执行的,要么是DLL 程序集里的代码并不是本机代码,而是一种名称为CIL的中间语言 程序集包含如下信息: 程序的CI ...
- The type org.springframework.jms.JmsException cannot be resolved报错解决
在调用JmsTemplate的send方法时,一直报编译时异常.如下: 异常提示是无法解析org.SpringFrawork.jms.JmsException类型.如下: The type org.s ...
- 基础拾遗----RabbitMQ
基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...
- java的文件操作(1)
package com.test.file; import java.io.*; import java.util.ArrayList; import java.util.Date; import j ...
- C# 值类型 引用类型
CLR 定义了两种类型,ReferenceTypes引用类型 和 ValueTypes 值类型.我们定义的各种Class都是引用类型,而我们用的decimal int 之类是值类型. 他们有什么区别呢 ...
- xamarin.android App在后台运行不退出
/// <summary> /// 重写按键事件 /// </summary> /// <param name="keyCode"></p ...
- python学习之老男孩python全栈第九期_数据库day001知识点总结 —— MySQL操作数据库以及数据表、基本数据类型、基本增删改查、外键定义以及创建
一. 学习SQL语句规则以及外键 1. 操作文件夹 create database db2; 创建文件夹 create database db2 default charset utf8; 创建文件夹 ...