'toast'에 해당되는 글 2건

  1. 2014.01.22 ChopeToastView v0.1.1
  2. 2014.01.17 ChopeToastView로 cocoapods 처음 등록
Project/OpenSource2014.01.22 10:52

0.1 버전으로도 충분히 이용 가능합니다. 

하지만 비효율적으로 돌아가고 있습니다.


setPadding / setMargin 등을 할때마다 frame을 새로 계산해주고 있죠. 그러다 보니 setter를 구현해주고 있습니다.

0.1.1 에서는 setter를 없애고 조금 더 효율적인 방향으로 수정해 보았습니다.





http://cocoapods.org/?q=Chope

https://github.com/chope-yoonhg84/ChopeToastView

신고
Posted by 초프(초보 프로그래머)
Project/OpenSource2014.01.17 10:28

iOS에서도 Android의 Toast같은 형태로 메세지를 보여주는 일이 많습니다.

Apple에서 제공하는 기능이 없어서 직접 구현해 보았습니다.


http://cocoapods.org/?q=chope


기본 사용 방법은 다음과 같습니다.

  • 기본 애니메이션
  • 기본 출력시간

[[ChopeToastView ToastViewWithMessage:@"TEST"] show];


보여지는 시간을 지정할 수 있습니다.

  • 기본 애니메이션
[[ChopeToastView ToastViewWithMessage:@"TEST"] showWithDuration:1.0];



애니메이션 지정도 가능합니다.

[[ChopeToastView ToastViewWithMessage:@"TEST"] showWithAnimation:^(ChopeToastView *toastView) {
    CGFloat y = toastView.frame.origin.y;
    
    CGRect frame = toastView.frame;
    frame.origin.y = -1 * toastView.frame.size.height;
    toastView.frame = frame;
    
    [UIView animateWithDuration:0.5
                     animations:^{
                         CGRect frame = toastView.frame;
                         frame.origin.y = y;
                         toastView.frame = frame;
                     }
                     completion:^(BOOL finished) {
                         [UIView animateWithDuration:0.5
                                               delay:3.0
                                             options:UIViewAnimationOptionTransitionNone
                                          animations:^{
                                              CGRect frame = toastView.frame;
                                              frame.origin.y +=  toastView.frame.size.height;
                                              toastView.frame = frame;
                                          }
                                          completion:^(BOOL finished) {
                                              [toastView hide];
                                          }];
                     }];
}];



이밖에도 여러가지 스타일을 지정할 수 있습니다.

현재까지 제공하는것으로는....

  • font
  • textColor
  • backgroundColor
  • backgroundAlpha
  • padding
  • margin
  • roundRadius


UIAppearance도 적용해 보려고 했지만... 빨리 올리고 싶었기 때문에... 시간 관계상 다음으로... :)

신고
Posted by 초프(초보 프로그래머)