zoukankan      html  css  js  c++  java
  • 3.04~设置屏幕常亮、TableView小bug~

    1、UITableView调用cellForRowAtIndexPath:返回空的情况

    [UITableView cellForRowAtIndexPath:index];//如果想要返回的cell并未被显示(绘制)则会返回为空,那么需要想方设法促使cell被绘制,例如调用下面的方法:

    [mTableDevices scrollToRowAtIndexPath:index atScrollPosition:UITableViewScrollPositionNone animated:NO]; //animated:NO必须是NO,否则selectRowAtIndexPath如果选择中未被绘制的cell将会返回空

    2、UIView的放大缩小

    #import <QuartzCore/QuartzCore.h>

    .......

    CGAffineTransform可以用来完成UIVIew的各种缩放翻转,如下定义

    A structure for holding an affine transformation matrix.

    struct CGAffineTransform {

       CGFloat a;

       CGFloat b;

       CGFloat c;

       CGFloat d;

       CGFloat tx;

       CGFloat ty;

    };

    typedef struct CGAffineTransform CGAffineTransform;

    CGAffineTransform

     

    //UIView放大

    UIView *view = ...;

    CGAffineTransform trans = CGAffineTransformScale(self.transform, 1.5, 1.5);

    view.transform = trans;

    //缩小到放大前的状态

    CGAffineTransform trans = CGAffineTransformInvert(self.transform);  //详见CGAffineTransformInvert函数定义

        /*

        trans = {

            a = 0.666667    //0.666667 = 1 - 1/1.5, 1.5即之前放大倍数的倒数, 1.5 * a = 1,才能回到之前的大小状态

            b = -0

            c = -0

            d = 0.666667

            tx = 0

            ty = 0

        } */

        CGAffineTransform newTransform = CGAffineTransformConcat(self.transform, trans);  //两两相乘

    //    CGAffineTransform newTransform = CGAffineTransformMake(1.0, 0, 0, 1.0, 0, 0);     //两个newTransform的值是一样的

        self.transform = newTransform;

    3.程序是启动状态时设置屏幕一直亮 
        UIApplication *appDelegate = [UIApplicationsharedApplication];
        appDelegate.idleTimerDisabled =YES;

    4.如何用UIColor生成UIImage

    [plain] view plaincopyprint?
    - (void)viewDidLoad   
    {
        [superviewDidLoad];  
        UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(10,10,100,100)];  
        UIImage *image = [self createImageWithColor:[UIColoryellowColor]];   //生成一张黄颜色的图片    
        [imageViewsetImage:image];   
        [self.viewaddSubview:imageView]; 
        [imageViewrelease];  
    }    
    - (UIImage *) createImageWithColor: (UIColor *) color 
    {   
        CGRect rect = CGRectMake(0.0f,0.0f,1.0f,1.0f);   
       UIGraphicsBeginImageContext(rect.size);   
       CGContextRef context =UIGraphicsGetCurrentContext();  
       CGContextSetFillColorWithColor(context, [colorCGColor]);  
        CGContextFillRect(context, rect);   
       UIImage *theImage =UIGraphicsGetImageFromCurrentImageContext();  
       UIGraphicsEndImageContext();   
        return theImage;   
    }  

  • 相关阅读:
    js显示当前时间
    js平滑循环滚动,广告图片文字…
    记录报错Cannot set property 'innerHTML' of null
    回到顶部的几种方法
    vue表单验证 Vee-Validate 的使用
    Vue @mouseover和@mouseout实现下拉二级导航
    线性代数学习笔记——第四章
    线性代数学习笔记——第三章
    线性代数学习笔记——第二章(下)
    线性代数学习笔记——第二章(上)
  • 原文地址:https://www.cnblogs.com/ligun123/p/2942668.html
Copyright © 2011-2022 走看看