我正在创建一个ID管理器,以0001
格式生成ID,包括零。为了做到这一点,我想到了使用String但我无法想到一种有效的增量方法。这样做的最佳方法是什么?
答案 0 :(得分:2)
在内部使用整数生成ID。 稍后将其格式化为具有正确格式的字符串作为生成过程的第二阶段。
在内部使用字符串会带来不必要的复杂性和问题。字符串不能用于计算或增量。
答案 1 :(得分:1)
您可以使用高效(Animator.m
)left-pad
模块!
@implementation Animator
- (NSTimeInterval)transitionDuration:(nullable id <UIViewControllerContextTransitioning>)transitionContext {
return 0;
}
- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext {
UIViewController *controllerToDismiss = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
UIView *viewToDismiss = [transitionContext viewForKey:UITransitionContextFromViewKey];
CGRect frameToDismissTo = [transitionContext finalFrameForViewController:controllerToDismiss];
viewToDismiss.frame = frameToDismissTo;
UIViewController *controllerToPresent = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];
UIView *viewToPresent = [transitionContext viewForKey:UITransitionContextToViewKey];
CGRect frameToPresentTo = [transitionContext finalFrameForViewController:controllerToPresent];
viewToPresent.frame = frameToPresentTo;
[[transitionContext containerView] addSubview:viewToPresent];
[transitionContext completeTransition:YES];
}
@end