gpt4 book ai didi

ios - 以编程方式添加 UIControl

转载 作者:行者123 更新时间:2023-11-29 13:56:16 26 4
gpt4 key购买 nike

我尝试以编程方式将 UITableView 添加到 ScrollView 中。我已经设置了 anchor 和数据源,委托(delegate)。你可以在代码中看到。但我不能。我放了一个断点,一切都运行了。但我在 ScrollView 中看不到。

     UITableView *tableView = [[UITableView alloc] init];
tableView.rowHeight = 130;
tableView.translatesAutoresizingMaskIntoConstraints = false;
tableView.delegate = self;
tableView.dataSource = self;
tableView.backgroundColor = [UIColor clearColor];

[self.scrollView addSubview:tableView];

[tableView.leftAnchor constraintEqualToAnchor:self.scrollView.leftAnchor constant:8].active = YES;
[tableView.rightAnchor constraintEqualToAnchor:self.scrollView.rightAnchor constant:8].active = YES;
[tableView.topAnchor constraintEqualToAnchor:self.viewShareBasketExtra.topAnchor constant:8].active = YES;
[tableView reloadData];

此代码有效:

 UILabel *lblPrice = [[UILabel alloc] init];
[lblPrice setFont:[UIFont fontWithName:@"HelveticaNeue" size:14]];
lblPrice.translatesAutoresizingMaskIntoConstraints = false;
[lblPrice setTextAlignment:NSTextAlignmentCenter];
lblPrice.text = [NSString stringWithFormat:@"%.2f TL",[_productModel Price]];
[self.priceView addSubview:lblPrice];

[lblPrice.leftAnchor constraintEqualToAnchor:self.priceView.leftAnchor constant:8].active = YES;
[lblPrice.rightAnchor constraintEqualToAnchor:self.priceView.rightAnchor constant:8].active = YES;
[lblPrice.centerXAnchor constraintEqualToAnchor:self.priceView.centerXAnchor].active = YES;
[lblPrice.centerYAnchor constraintEqualToAnchor:self.priceView.centerYAnchor].active = YES;
[self getComments];

但是代码不起作用:

UITableView *tableView = [[UITableView alloc]init];
tableView.rowHeight = 130;
tableView.translatesAutoresizingMaskIntoConstraints = false;
tableView.delegate = self;
tableView.dataSource = self;
tableView.backgroundColor = [UIColor clearColor];

[self.scrollView addSubview:tableView];

[tableView.leftAnchor constraintEqualToAnchor:self.scrollView.leftAnchor constant:8].active = YES;
[tableView.rightAnchor constraintEqualToAnchor:self.scrollView.rightAnchor constant:8].active = YES;
[tableView.topAnchor constraintEqualToAnchor:self.webView.topAnchor constant:8].active = YES;

我的委托(delegate)方法:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if(commentsArray!=nil){
return [commentsArray count];
}else
{
return 0;
}

}

我正在使用自定义表格单元格:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *identity = @"CommentTableViewCell";
CommentTableViewCell *cell = (CommentTableViewCell *)[tableView dequeueReusableCellWithIdentifier:identity];
if(cell == nil){
@try {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CommentTableViewCell" owner:self options:nil];
cell = [nib objectAtIndex:0];
}
@catch (NSException *exception) {
NSLog(@"Err:%@", exception.reason);
}
@finally {

}

}

最佳答案

在头文件 .h 中添加下一段代码:

 <UITableViewDelegate,UITableViewDataSource>

例如在 UIVIewController 类中

@interface ViewController : UIViewController<UITableViewDelegate,UITableViewDataSource>

这就是为您准备的所有内容,头文件现在已变为 .m 并实现 de nextlines:这是高度:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{return 40.0f}

然后为此添加 ScrollView

scrollview.addSubview(yourTableView)

关于ios - 以编程方式添加 UIControl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55693808/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com