IOS:一些小总结

1、textField输入时,字体太靠左边边缘,


    解决方法: 

     

    UIView *paddingView = [[UIViewalloc]initWithFrame:CGRectMake(0,0,5,30)];

    textField.leftView = paddingView;

    textField.leftViewMode =UITextFieldViewModeAlways;


另外,textfield 的attributedPlaceholder居中显示:因为更改了attributedPlaceholder的字体大小,导致attributedPlaceholder偏上


NSMutableParagraphStyle *style [self.quickEntrustView.quantity.defaultTextAttributes[NSParagraphStyleAttributeName] mutableCopy];
    style.minimumLineHeight =  self.quickEntrustView.quantity.font.lineHeight - ( self.quickEntrustView.quantity.font.lineHeight - [UIFont boldSystemFontOfSize:FONT_RATIO(12)].lineHeight) / 2.0;
 self.quickEntrustView.quantity.attributedPlaceholder = [[NSAttributedString alloc]initWithString:@"买入数量" attributes:@{NSForegroundColorAttributeName:kTitleThirdColor,NSFontAttributeName:[UIFont boldSystemFontOfSize:FONT_RATIO(12)],NSParagraphStyleAttributeName : style}];
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3


2、将字符串转化成人民币形式:(1234567转化后为123,456.00形式)

方法一:

- (NSString *)numberChangeToMoneyType:(NSString *)inputNumber

{

   NSLog(@"inputNumber1:%@",inputNumber);

    inputNumber = [NSStringstringWithFormat:@"%@",inputNumber];

   int number = [inputNumberintValue];

   if (number<0) {

        inputNumber = [NSStringstringWithFormat:@"%d",abs(number)];

    }

   NSLog(@"inputNumber2:%@",inputNumber);

    

   NSString *str =@"0.00";

   if ([inputNumberfloatValue] ==0.0)

    {

       return str;

    }

   elseif (inputNumber.length <=2)

    {

        

       if (inputNumber.length ==0)

        {

            str =@"0.00";

        }

       elseif (inputNumber.length ==1)

        {

            str = [NSStringstringWithFormat:@"0.0%@", inputNumber];

        }

       elseif (inputNumber.length ==2)

        {

            str = [NSStringstringWithFormat:@"0.%@", inputNumber];

        }

    }

   elseif (inputNumber.length >2)

    {

       if (((inputNumber.length -2) %3) == 0)

        {

           //小数点后2

           NSString *strTemp2 = [inputNumbersubstringWithRange:NSMakeRange(inputNumber.length -2,2)];

           //小数点前

           NSString *strTemp1 =@"";

           for (int i = inputNumber.length -5; i >= 0;)

            {

               //截取的段数

               NSString *strTemp3 = [inputNumbersubstringWithRange:NSMakeRange(i,3)];

               NSString *strTemp4 = [NSStringstringWithFormat:@",%@", strTemp3];

                strTemp1 = [strTemp4stringByAppendingString:strTemp1];

                i = i -3;

            }

            str = [NSStringstringWithFormat:@"%@.%@", strTemp1, strTemp2];

            str = [strsubstringWithRange:NSMakeRange(1, str.length -1)];

        }

       else

        {

           //小数点后2

           NSString *strTemp2 = [inputNumbersubstringWithRange:NSMakeRange(inputNumber.length -2,2)];

           //小数点前

           NSString *strTemp1 = [inputNumbersubstringWithRange:NSMakeRange(0, inputNumber.length -2)];

           NSString *strTemp3 =@"";

           if (strTemp1.length <3)

            {

                str = [NSStringstringWithFormat:@"%@.%@", strTemp1, strTemp2];

            }

           else

            {

               for (int i = strTemp1.length -3; i >= 0;)

                {

                   NSString *strTemp4 = [strTemp1substringWithRange:NSMakeRange(i,3)];

                   NSString *strTemp5 = [NSStringstringWithFormat:@",%@", strTemp4];

                    strTemp3 = [strTemp5stringByAppendingString:strTemp3];

                   if (i <3)

                    {

                       NSString *strTemp4 = [strTemp1substringWithRange:NSMakeRange(0, i)];

                       NSString *strTemp5 = [NSStringstringWithFormat:@",%@",strTemp4];

                        strTemp3 = [strTemp5stringByAppendingString:strTemp3];

                    }

                    i = i -3;

                }

                str = [NSStringstringWithFormat:@"%@.%@", strTemp3, strTemp2];

                str = [strsubstringWithRange:NSMakeRange(1, str.length -1)];

            }

        }

    }

   if (number<0) {

        str = [NSStringstringWithFormat:@"-%@",str];

    }

    

   return str;

}


方法二:


  NSString *valueStrTest =@"677789.98";

    NSNumberFormatter *numberFormatter = [[NSNumberFormatteralloc]init];

    [numberFormatter setPositiveFormat:@",###.00;"];//输出:677789.98

//    [numberFormatter setPositiveFormat:@",###.00"];//输出:677789.98

//    [numberFormatter setPositiveFormat:@".00;"];//输出:677789.98

//    [numberFormatter setPositiveFormat:@"0%;"];//输出:67778998%

//    [numberFormatter setPositiveFormat:@"0.00%;"];//输出:67778998.00%

    

    NSString *changeStr = [numberFormatterstringFromNumber:[NSNumbernumberWithDouble:[valueStrTestdoubleValue]]];


    NSLog(@"change2 = %@",changeStr);


3、button标题从最左边开始

  

crediteBtn.contentHorizontalAlignment =UIControlContentHorizontalAlignmentLeft;也可以设置居中或从右边开始,设置后,会看到,字体距离button边缘太近了,可以在设置下

TitleEdgeInsets,如

 [button setTitleEdgeInsets:UIEdgeInsetsMake(0,5,0,0)];让title距离边缘为5。


4、TableView样式为plain时,不想显示没内容的Cell

self.tableView.tableFooterView = [[UIView alloc] init];

5、自定义了leftBarbuttonItem左滑返回手势失效了怎么办?
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
                                         initWithImage:img
                                         style:UIBarButtonItemStylePlain
                                         target:self
                                         action:@selector(onBack:)];
self.navigationController.interactivePopGestureRecognizer.delegate = (id<UIGestureRecognizerDelegate>)self;

6、ScrollView莫名其妙不能在viewController划到顶怎么办?
self.automaticallyAdjustsScrollViewInsets = NO;
7、怎么点击self.view就让键盘收起,需要添加一个tapGestures么?
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
   [self.view endEditing:YES];
}



8、画个转动的半封闭圆


x,y为圆点坐标,radius半径,startAngle为开始的弧度,endAngle为 结束的弧度,clockwise 0为顺时针,1为逆时


@implementation CircleEntrustView

- (void)drawRect:(CGRect)rect {
    // Drawing code
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetLineWidth(context,SCREEN_RATIO_CEIL(1));
    CGContextSetStrokeColorWithColor(context, UIColorFromRGB(0xbac9d8).CGColor);
    CGContextAddArc(context, rect.size.width / 2,rect.size.width / 2, rect.size.width / 2 - SCREEN_RATIO_CEIL(0.5) , -M_PI_2, 4.0 / 5 * M_PI * 2 - M_PI_4, 0);
    CGContextStrokePath(context);
}

- (void)startRation {
    CABasicAnimation *rotationAnimation;
    rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
    rotationAnimation.toValue = [NSNumber numberWithFloat:M_PI * 2.0];
    rotationAnimation.duration = 1;
    rotationAnimation.repeatCount = HUGE_VALF;
    [self.layer addAnimation:rotationAnimation forKey:@"rotationAnimation"];
}

@end


9、给UIView添加渐变的阴影,用CAGradientLayer实现


    CAGradientLayer *layerTop = [CAGradientLayer layer];
    layerTop.frame = CGRectMake(0, 0, 200, SCREEN_RATIO_CEIL(35));
    layerTop.colors = [NSArray arrayWithObjects:(id)UIColorFromRGBA(0x000000, 0).CGColor,(id)UIColorFromRGBA(0x000000, 0.2).CGColor, nil];
    [self.commitViewImage.layer addSublayer:layerTop];
    
    CAGradientLayer *layerBottom = [CAGradientLayer layer];
    layerBottom.frame = CGRectMake(0, 160, 200, 40);
    layerBottom.colors = [NSArray arrayWithObjects:(id)UIColorFromRGBA(0x000000, 0.2).CGColor,(id)UIColorFromRGBA(0x000000, 0).CGColor, nil];
    [self.commitViewImage.layer addSublayer:layerBottom];




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值