美文网首页
【极客班】iOS进阶(一)

【极客班】iOS进阶(一)

作者: 护林员 | 来源:发表于2016-04-18 08:39 被阅读0次

多傻,这周只看到了选学的内容,还以为只是把这些内容看四个星期,结果一个Git看了三天,还混沌了几日,方才发现这周的课程被折叠了。。。

这周悲剧了,笔记质量指数下滑,各位担待啊!


把ScrollView看了两遍,先把作业做完了不是?

其实还是借鉴了搜索引擎里搜到的,发到博客的文章的作者都好厉害,全是纯代码,我复制粘贴就是一个项目啊!对于我,还是要结合StoryBoard来构建,所以也是部分查阅了。

这个作业看起来简单,其实对我这种基本功不怎么行的人,实在是煎熬。

(譬如delegate,高高兴兴的敲上 [scrollView setDelegate:self] ,结果扎眼的⚠️怎么也去不掉,才发现是@interface里没敲。)

我在StoryBoard里创建了应该有的ScrollView和PageControl(这玩意儿悲剧了,一会儿说)ImageView代码创建,使其尺寸和ScrollView相同即可。

在ScrollView里添加多张图片用的是for循环,但并没有用可变数组,不过见过有用这个的。

UIScrollView * scrollView = self.myScrollView;

//几张图片呢?

NSInteger totalImageCount = 3 ;

[scrollView setContentSize:CGSizeMake(self.view.bounds.size.width* totalImageCount, 0)];

//    向其中添加pageImageView

CGFloat width=self.view.bounds.size.width;

CGFloat height=self.view.bounds.size.height;

for (NSInteger i=0; i< totalImageCount; i++) {

//        相对于scrollView内容的位置

UIImageView *pageImageView=[[UIImageView alloc] initWithFrame:CGRectMake(i*width, 0, width, height)];

//把Image按照这个规律按顺序把名字起了

[pageImageView setImage:[UIImage imageNamed:[NSString stringWithFormat:@"Image0%ld",i + 1]]];

[scrollView addSubview:pageImageView];

}

来瞅一眼可变数组的方法,其实换汤不换药(来源:IOS之PageControl和ScrollView搭配 - liric的专栏 - 博客频道 - CSDN.NET

NSMutableArray * imgArr = [[NSMutableArray alloc]initWithObjects:

[UIImage imageNamed:@"1933_1.jpg"],

[UIImage imageNamed:@"1933_2.jpg"],

[UIImage imageNamed:@"1933_3.jpg"],

nil]; // 数组放三张图片

self.array = imgArr;

for (int i =0; i<[array count]; i++)

{

[self loadScrollViewWithPage:i]; // 遍历数组

}

然后我的PageControl悲剧了,不论是storyboard里放置,还是代码里搞,总是不偏不倚地在左上角放着,我的点击小点也跳图片的方法,也没有奏效。

- (void)scrollViewDidScroll:(UIScrollView *)sender

{

CGFloat pagewidth = self.myScrollView.frame.size.width;

int page = floor((self.myScrollView.contentOffset.x - pagewidth/2)/pagewidth)+1;

self.myPageControl.currentPage = page; // 触摸pageControl也能滚动切换图片

}

希望下周批到我作业的各位童鞋能够帮着找找错哈~



View的层次结构

UIView的层次管理方法

Create

- (void)addSubview:(UIView *)view;

- (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;

- (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;

- (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;

Read

(BOOL)isDescendantOfView:(UIView*)

Update

- (void)bringSubviewToFront:(UIView *)view;

- (void)sendSubviewToBack:(UIView *)view;

- (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2;

Delete

- (void)removeFromSuperview;


Git

Git的基本概念

Git是基于commit进行管理的,其他VCS多基于文件

拥有独特的staging area(暂存工作区)

基本用法

git init 初始化一个空的本地仓库(.git目录)

git add  将修改登记到stage 里

git commit 提交stage 里的修改

message

重点是意图:解决了什么问题,加了什么功能等。

不要攒一堆修改一起提交。

一个commit解决一个问题,甚至一个复杂的问题分为几个commit一起解决。

相关的修改一起提交。

Git  的分布式仓库

git init : 在本地建立一个新仓库

git clone url : 从服务器上克隆一个仓库到本地

git remote add name url : 关联远程仓库

git pull [name branch]: 下载  (git pull 相当于 fetch 和update working copy集合)

git push name branch: 上传

撤销修改撤销

a仅在工作副本中的修改

git checkout -- file

b撤销已登记到Stage 中的修改

git reset HEAD file (退回工作副本)

git reset -- hard HEAD file (回最后一次提交状态)撤销已提交到本地仓库中的修改

git revert(抵消)

git reset -- hard(撤销)

c撤销已经推送到服务器中的修改

尝试git revert

相关文章

  • 【极客班】iOS进阶(一)

    多傻,这周只看到了选学的内容,还以为只是把这些内容看四个星期,结果一个Git看了三天,还混沌了几日,方才发现这周的...

  • 【极客班】iOS进阶(二)

    本周的课程主要讲了两个方面的内容:动画和网络 动画方面,分别讲了UIKit、Transition和CoreAnim...

  • 极客Go进阶训练营笔记

    极客Go进阶训练营怎么样 有人问我极客java进阶训练营怎么样,我来给大家回答一下 。 这个课程总体上还是不错的,...

  • 极客班 iOS 设计模式(一)

    总体感觉设计模式课程偏理论,操作起来可能要反复实践后,才会知道项目用哪个设计模式比较合适。 我目前还是学习了解的还...

  • 【极客班】iOS用户界面

    MVC模式 Cocoa Touch设计者们采用MVC模式作为指导原则,在基于图形用户界面的应用程序中,使用MVC可...

  • 2021.10.13日我要学习的内容

    极客-前端进阶训练营 京程一灯-前端全栈工程师精英班14期 bingo出国英语 贝克汉姆在星巴克,80个词汇起源故...

  • 极客班 iOS 设计模式(二)

    重点在通知模式流程图,大致了解几种通知模式的用途的区别。都是理论的东西,还是希望实际写代码时联系理论,仔细考虑选择...

  • 极客班 iOS 设计模式(三)

    设计模式课程给我的感受是:理清各种平时固定用的 API 的背后的原理或思路,尤其是写代码时候反复去审视开发框架和思...

  • 【极客班】iOS开发实战——image

    (前言部分写给自己看着玩的,不必算入总字数) 这一部分的课分为了两个阶段,对于我来说,还是一口气看完的。 借着之前...

  • 【极客班】IOS学习资料推荐

    学习网站推荐 Stack Overflow是一款回答技术问题的网站,涉及到某个问题可以去上面搜,也可以作为一种提高...

网友评论

      本文标题:【极客班】iOS进阶(一)

      本文链接:https://www.haomeiwen.com/subject/dyiwlttx.html