文档章节

iOS实现安卓的Toast消息提示框

丁铛铛
 丁铛铛
发布于 2015/06/15 14:09
字数 204
阅读 51
收藏 0
点赞 0
评论 0
#import <UIKit/UIKit.h>

@interface Toast : UIView
+(id)toastWithView:(UIView *)view
             title:(NSString *)title
         timestamp:(CGFloat)time;
- (void)show;
@end


#import "Toast.h"

@interface Toast()

@property (nonatomic, retain)UILabel *label;
@property (nonatomic, copy)NSString *title;
@property (nonatomic, assign)CGFloat time;

@end

@implementation Toast
-(void)dealloc{
    [_label release];
    [_title release];
    [super dealloc];
}


- (UILabel *)label{
    if (!_label) {
        self.label = [[UILabel alloc] initWithFrame:CGRectMake(3, 3, self.frame.size.width - 6, 30)];
        _label.textColor = [UIColor whiteColor];
        _label.font = [UIFont systemFontOfSize:14];
        _label.adjustsFontSizeToFitWidth = YES;
        _label.text = _title;
        _label.textAlignment = NSTextAlignmentCenter;
    
    }
    return _label;
}
/*
    便利构造器的方法
 
 */
+(id)toastWithView:(UIView *)view title:(NSString *)title timestamp:(CGFloat)time{
    Toast *toast = [[[self class] alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width / 2, 40)];
    if (toast) {
        CGPoint center = view.center;
        center.y = view.frame.size.height - view.frame.size.height / 4;
        toast.center = center;
        toast.alpha = 0.6;
        toast.backgroundColor = [UIColor blackColor];
        toast.time = time;
        toast.title = title;
        toast.layer.masksToBounds = YES;
        toast.layer.cornerRadius =  5;
        [toast addSubview:toast.label];
        [view addSubview:toast];
    }
return toast;
}

- (void)show{
   [UIView animateWithDuration:self.time animations:^{
       self.alpha = 0;
   } completion:^(BOOL finished) {
       [self removeFromSuperview];
   }];
}


© 著作权归作者所有

共有 人打赏支持
丁铛铛
粉丝 3
博文 13
码字总数 12294
作品 0
周口
程序员
PhoneGap使用PushPlugin插件实现消息推送

概括 Android设备通过GCM服务来接收推送消息,而iOS设备这从苹果的APN服务获取。虽然按照负载来说这是两种不同的服务,但是证书都在从第三方接收消息的时候是需要作为一个存储和转发类型的服...

Mr-iu
2014/04/04
0
0
实现PhoneGap应用里的消息推送

在此教程中你将学会实现PhoneGap应用里的消息推送,你想学会下述内容: · 消息推送的大体处理过程 · 如何使用PhoneGap内置支持的PushPlugin · PushPlugin API概括 · 如何注册自己的应用来...

james_laughing
2014/12/17
0
0
iOS 终于支持了 PWA,一起来认识一下这个强化版「小程序」 | 科普

iOS 终于支持了 PWA,一起来认识一下这个强化版「小程序」 | 科普 发布于 2018-04-13 文章被以下专栏收录

少数派
07/06
0
0
PhoneGap使用PushPlugin插件实现消息推送

概括 Android设备通过GCM服务来接收推送消息,而iOS设备这从苹果的APN服务获取。虽然按照负载来说这是两种不同的服务,但是证书都在从第三方接收消息的时候是需要作为一个存储和转发类型的服...

james_laughing
2014/12/16
0
0
PhoneGap使用PushPlugin插件实现消息推送

概括 Android设备通过GCM服务来接收推送消息,而iOS设备这从苹果的APN服 务获取。虽然按照负载来说这是两种不同的服务,但是证书都在从第三方接收消息的时候是需要作为一个存储和转发类型的服...

james_laughing
2014/12/17
0
0
fir.im Weekly - 每个程序员都应当拥有的技能树

本周收集了一些优秀的 iOS & Android 开发资源和程序员 IT 技能拓展的 Tips. 知道创宇研发技能表 v3.0 作为程序员可能都听说过【知道创宇】,他们是一家黑客文化浓厚的安全公司。这张技能表为...

风起云飞fir_im
2015/09/06
0
0
《小印记》源码分享--极光推送服务器篇

笔者这几天刚完成《小印记》的推送功能,今天特分享一下在做的过程中实际解决的问题。如果读者学到了有用的东西,希望能前往App Store下载《小印记》支持一下笔者,谢谢! 《小印记》iOS源码...

_子墨
2017/03/21
0
0
fixed定位元素被安卓、ios键盘顶起的解决办法

问题背景: 当我们在写H5页面时经常会有fixed固定位置的元素存在,例如下图左中的"作业帮一课APP下载框",当我们input输入的时候键盘会弹起并将fixed定位的下载框顶起,如下图右,ios和安卓部分机...

JamesView
07/07
0
0
fir.im Weekly - iOS 开发中的 Git 流程

本期 fir.im Weekly 收集了微博上的热转资源,包含 Android、iOS 开发工具、源码等好用的轮子,还有一些 APP 设计的 Tips,希望对你有用。 精仿知乎日报 iOS 端 @我偏笑_NSNirvana花了将近一...

风起云飞fir_im
2015/11/03
0
0
微信公众平台开发:进阶篇(Web App开发入门)

WebApp与Native App有何区别呢? Native App: 1、开发成本非常大。一般使用的开发语言为JAVA、C++、Objective-C。 2、更新体验较差、同时也比较麻烦。每一次发布新的版本,都需要做版本打包...

LorinLuo
2015/03/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

32.filter表案例 nat表应用 (iptables)

10.15 iptables filter表案例 10.16/10.17/10.18 iptables nat表应用 10.15 iptables filter表案例: ~1. 写一个具体的iptables小案例,需求是把80端口、22端口、21 端口放行。但是,22端口我...

王鑫linux
今天
0
0
shell中的函数&shell中的数组&告警系统需求分析

20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求分析

影夜Linux
今天
0
0
Linux网络基础、Linux防火墙

Linux网络基础 ip addr 命令 :查看网口信息 ifconfig命令:查看网口信息,要比ip addr更明了一些 centos 7默认没安装ifconfig命令,可以使用yum install -y net-tools命令来安装。 ifconfig...

李超小牛子
今天
1
0
[机器学习]回归--Decision Tree Regression

CART决策树又称分类回归树,当数据集的因变量为连续性数值时,该树算法就是一个回归树,可以用叶节点观察的均值作为预测值;当数据集的因变量为离散型数值时,该树算法就是一个分类树,可以很...

wangxuwei
昨天
1
0
Redis做分布式无锁CAS的问题

因为Redis本身是单线程的,具备原子性,所以可以用来做分布式无锁的操作,但会有一点小问题。 public interface OrderService { public String getOrderNo();} public class OrderRe...

算法之名
昨天
9
0
143. Reorder List - LeetCode

Question 143. Reorder List Solution 题目大意:给一个链表,将这个列表分成前后两部分,后半部分反转,再将这两分链表的节点交替连接成一个新的链表 思路 :先将链表分成前后两部分,将后部...

yysue
昨天
1
0
数据结构与算法1

第一个代码,描述一个被称为BankAccount的类,该类模拟了银行中的账户操作。程序建立了一个开户金额,显示金额,存款,取款并显示余额。 主要的知识点联系为类的含义,构造函数,公有和私有。...

沉迷于编程的小菜菜
昨天
1
0
从为什么别的队伍总比你的快说起

在机场候检排队的时候,大多数情况下,别的队伍都要比自己所在的队伍快,并常常懊悔当初怎么没去那个队。 其实,最快的队伍只能有一个,而排队之前并不知道那个队快。所以,如果有六个队伍你...

我是菜鸟我骄傲
昨天
1
0
分布式事务常见的解决方案

随着互联网的发展,越来越多的多服务相互之间的调用,这时候就产生了一个问题,在单项目情况下很容易实现的事务控制(通过数据库的acid控制),变得不那么容易。 这时候就产生了多种方案: ...

小海bug
昨天
3
0
python从零学——scrapy初体验

python从零学——scrapy初体验 近日因为一些事情,需要从网上爬取一些东西,故而想通过使用爬虫来顺便学习下强大的python。现将一些学习中遇到的问题记录下来,以便日后查询 1. 开发环境的准...

咾咔叽
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部