zoukankan      html  css  js  c++  java
  • Chapter 7 Delegation and Text Input

    Chapter 7  Delegation and Text Input

     

    1. Applications can access the same technology that powers those effects by using the UIInterpolatingMotionEffect class.

     

    UILabel *label = [[UILabel alloc] init];

    UIInterpolatingMotionEffect *motionEffect;

            motionEffect = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.x" type:UIInterpolatingMotionEffectTypeTiltAlongHorizontalAxis];

            motionEffect.minimumRelativeValue = @(-25);

            motionEffect.maximumRelativeValue = @(25);

            [label addMotionEffect:motionEffect];

            

            motionEffect = [[UIInterpolatingMotionEffect alloc] initWithKeyPath:@"center.y" type:UIInterpolatingMotionEffectTypeTiltAlongVerticalAxis];

            motionEffect.minimumRelativeValue = @(-25);

            motionEffect.maximumRelativeValue = @(25);

            [label addMotionEffect:motionEffect];

     

     

    2. To set up the scroll view, you will need to give it one view as a subview and turn off the paging(default NO). The scroll view also needs limits on how much it can zoom in and out. Finally, you need to implement the scroll view delegate method viewForZoomingInScrollView: to return the zoomed view.

     

    -(void)loadView

    {

        // Create a view

        BNRHypnosisView *backgroundView = [[BNRHypnosisView alloc] init];

        backgroundView.frame = [UIScreen mainScreen].bounds;

        

        CGRect textFieldRect = CGRectMake(40, 70, 240, 30);

        UITextField *textField = [[UITextField alloc] initWithFrame:textFieldRect];

        

        // Setting the border style on the text field will allow us to see it more easily

        textField.borderStyle = UITextBorderStyleRoundedRect;

        textField.returnKeyType = UIReturnKeyDone;

        textField.placeholder = @"Hypnotize me";

        textField.delegate = self;

        

        [backgroundView addSubview:textField];

        

        // Scroll view to pinch the view

        UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:[UIScreen mainScreen].bounds];

        scrollView.delegate = self;

        scrollView.minimumZoomScale = .5;

        scrollView.maximumZoomScale = 1.5;

        scrollView.contentSize = CGSizeMake(300, 200);

        

        zoomView = backgroundView;

        

        [scrollView addSubview:backgroundView];

        

        

        // Set it as the view of this view controller

        self.view = scrollView;

    }

     

    // UIScrollView delegate

    -(UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView

    {

        return zoomView;

    }

  • 相关阅读:
    神策Loagent数据收集 windows部署的坑
    hive算法报错..
    检查SQL语句是否合法
    This operation is not available unless admin mode is enabled: FLUSHDB
    关于scrollLeft的获取在不同浏览器或相同浏览器的不同版本下的获取
    Vue-cli创建项目从单页面到多页面4
    Vue-cli创建项目从单页面到多页面3-关于将打包后的项目文件不放在根目录下
    Vue-cli创建项目从单页面到多页面2-history模式
    Vue-cli创建项目从单页面到多页面
    关于网络硬件配置出现问题,无法上网问题的解决
  • 原文地址:https://www.cnblogs.com/1oo1/p/3977744.html
Copyright © 2011-2022 走看看