昨天做的项目,需要点击view上的按钮,push到下一个界面,可是view不是controller,没有push,百度了半天,也没找到能看懂的方法,于是找朋友,要demo,自己写了一个。新手可以参考一下,共同进步。
首先,创建一个viewController,这里命名为FirstViewController,在xib上拖拽两个按钮,一个view;点击左边的按钮,会显示一个view,上面有一个按钮,点击push到下一个界面。点击右边的,显示另一个view。
然后创建两个view,注意,继承自UIView的,不会自带xib,需要手动添加。教程自己百度,这里只提示一点:一定要选中view,设置其class,不然,像我这种小白,找不出来原因的,切记!在这个view上放了一个按钮,就是点击它,要push到另一个页面。
在这个view的.m方法里,加载xib
+ (FirstView *)firstView {
return [[NSBundle mainBundle]loadNibNamed:@"FirstView" owner:nil options:nil][0];
}
在FirstViewController的点击“显示FirstView”的方法里,加载这个view
FirstView *view = [FirstView firstView];
view.frame = _commonView.bounds;//注:_commonView就是FirstViewController里的那个view,细心地人,在图一就看出来了
第二个view的做法和这个一样,然后运行,你就可以看到,点击左右两个不同的按钮,可以看到你自己写的两个相对应的view。下面开始说一下view push的内容:在这里,点击FirstView上面的按钮,并不能直接push,需要用block或者代理传值。我就说一下block吧,因为我也是个渣渣,到现在还不会用代理。
为了方便,直接上图:block的使用,分四步:1.声明一个block;2.声明一个block属性;3.实现block;4.调用block
这个图实现了前两步,第三步要在FirstViewController里面实现。
第四步,要回到FirstView里面调用
好了,到这里,已经可以实现view push到别的界面了。
(第一次写文章,好紧张)