0917 Cell分组 静态Cell xib创建页面 自定义控件

来源:互联网 发布:office办公软件免费版 编辑:程序博客网 时间:2024/05/16 04:58
箭头、标识、创建类与其关联
控制第一部分有3行,
第二部分10行。

选中TV

右侧属性 设置“Style”为
“group”,它默认为“Plain”。


Separater设置:
默认是有线分割。
可以给线加颜色。
在TV中显示一些内容。
情况1:

TableHeaderView 会随着滚动。
如果上面要求不动显示 是个ViewController。
先拖拽1个VIEW 在控件框的下方。


上中下三位置
header
cell
footer

使用到了TextView.

@property (weak, nonatomic) IBOutlet UITextView *myTextView;

@end

@implementation TableViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.myTextView.text = @"个人简介";
}



静态Cell

选中Table View
设置Section
很难选到,一般点击一下“Root View Controller”

应用场景:页面一成不变。界面不会改变。
如果是静态Cell
需要把创建TableViewController时生成的模板代码,
两个 协议方法 “分区个数” 、“行数” 代码 注释掉。


Cell不够,就往里拖:

Accessory Type:
选中该行 

1、静态Cell 在Tableview中可以上下拖动
2、当你未设置静态Cell“分区”,默认一个分区。在一个分区内做好设置后。修改分区个数,将创建多个和第一个设置一样的 Cell个数相同的分区。

Xib。
目前学习过的创建页面的方式有:
1、通过类创建
2、通过Storyboard拖拽
现在再学习一种,通过XIB生成页面。

在SB之前,是纯代码+XIB。
一个页面对应一个XIB。
后来SB出现,XIB整合到了SB中。

SB连线方式使得 页面关系清晰。

大项目,几个人一起开发,用SB麻烦:
需要同时访问同一个文件。
一般都是纯代码,或纯代码+Xib。

1、纯代码。
2、Xib。
正确的方式是,适合用什么你就用什么。
Xib和SB都是拖拽。

动态偏多,界面变化较多,不是一成不变。用代码控制。

静态,改变少。用拖拽。



SB删。
Main.interface 中的Main  去掉。

在AppDelegate.m中创建window
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
   
    ViewController *vc = [[ViewController alloc]initWithNibName:@"ViewController" bundle:nil];
   
    self.window.rootViewController = vc;
    [self.window makeKeyAndVisible];

    // Override point for customization after application launch.
    return YES;
}
第一个页面是ViewController,直接把它的XIB当做Storyboard来用。
关联什么的都是一样的,一样跳转到TableViewController。
创建类的时候,勾选生成XIB文件。
#import "AppDelegate.h"
#import
 "TableViewController.h"
@interface AppDelegate ()

@end

@implementation AppDelegate


- (
BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

   
 self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
   
 TableViewController *vc = [[TableViewController alloc]initWithNibName:@"TableViewController" bundle:nil];
   
   
 self.window.rootViewController = vc;
    [
self.window makeKeyAndVisible];
   
   
 return YES;
}
XIB编译完之后变长NIB,所以写的NibName。
一般XIB的名字和其类名是一样。
必须一致。



删除文件时:

中间是引用删除,不删除源文件。
第三个 删除源文件。


XIB可以创建页面,也可创建控件。
自定义控件。

如之前的地鼠类。

1、改动现有控件。
继承现有的控件,再修改它的功能。

2、自己根据需求
一个控件是其他几个控件的功能的组合。

3、控件组合出来,需要容器UiView。继承UiView。
XIB表示“页面”才让勾选。

老师笔记:
1、通过纯代码自定义控件
2、通过纯代码+XIB自定义控件。

命名和UIView控件名一样。

XIB拖拽一个VIEW
改大小:
去掉状态栏 “电池”

菊花,改大小,
上来就旋转:

改View背景颜色
改Lable字体颜色白
,xib文件关联类代码。因为控件中的内容可能涉及到修改,所以关联到类。
自定义控件内容(如Label)不允许直接关联到.m中,要求关联到.h中。
自定义控件关联到代码 的.h中。

在ViewController中创建。
1、

XIB可以自定义多个控件。
多个控件并列关系。
创建的时候的返回值就是一个数组。

- (void)viewDidLoad {
    [
super viewDidLoad];
   
 LoadingView *lv = [[[NSBundle mainBundle]loadNibNamed:@"LoadingView" owner:self options:nil]lastObject];
    lv.
center = self.view.center;
    [
self.view addSubview:lv];

}  

改Frame。

第三方框架:不是自己的,不是苹果的。

0 0
原创粉丝点击