如何在Objective C中的Custom TableView UILabel上设置数据模型值

问题描述 投票:1回答:2

我是iOS的新手,我在UIlabel上设置数据模型时遇到了问题

我用这个代码来改变

在ConnectiondidFinishLoading中

 AuditTextBoxarray=[[NSMutableArray alloc] init];
            for(int i=0;i<idarray.count;i++)
            {
                DataModel *model = [DataModel new];
                model.AuditTextBoxString = @"";
                [AuditTextBoxarray addObject:model];
            }

在cellforrowatindexpath

 cell.lblAuditTextBox.text=[NSString stringWithFormat:@"%@",[AuditTextBoxarray objectAtIndex:indexPath.row ]];

按钮单击

   NSString *String=textView1.text;
   DataModel *model = [AuditTextBoxarray objectAtIndex:index];
   model.AuditTextBoxString = String;

但是我无法在tableview中设置数据模型的值:

enter image description here

如何将数据模型值设置为uilabel?我做错了什么,但我没有得到。

DataModel.h

@interface DataModel : NSObject
@property(nonatomic, strong)NSString *strSelected;
@property(nonatomic,strong)NSString *TextViewvalue;
@property(nonatomic,strong)NSString *RateViewValue;
@property(nonatomic,strong)NSString *Popupvalue;
@property(nonatomic,strong)NSString *SurveySelected;
@property(nonatomic,strong)NSString *AuditTextBoxString;

DataModule.m

#import "DataModel.h"

@implementation DataModel

@end

我使用DataModule更改Button颜色并将其设置在表格视图上

在ConnectionDidFinishLoading中

    for (int i =0; i<idarray.count; i++)
    {
        DataModel *model = [DataModel new];
        model.strSelected = @"";
        [arrData addObject:model];

    }

按钮单击

sender.backgroundColor = [UIColor redColor];
DataModel *model = [arrData objectAtIndex:sender.tag];
model.strSelected = @"P";

的cellForRowAtIndexPath

 //background color change on button
    DataModel *model = [arrData objectAtIndex:indexPath.row];
    if([model.strSelected isEqualToString:@"P"])
    {
        cell.passbtn.backgroundColor = [UIColor redColor];
    }

现在我试图在数据模型上添加uilabel上的文本。

ios objective-c iphone uitableview
2个回答
1
投票

我只是改变了代码

cell.lblAuditTextBox.text=[NSString stringWithFormat:@"%@",[AuditTextBoxarray objectAtIndex:indexPath.row ]];

DataModel *model = [AuditTextBoxarray objectAtIndex:indexPath.row];
cell.lblAuditTextBox.text=model.AuditTextBoxString

0
投票

在ConnectiondidFinishLoading或On Button Click中更新数据模型后,在主线程上重新加载tableview(如果您在一个单独的线程中)以刷新View上的数据。就像是

dispatch_async(dispatch_get_main_queue(), ^{
    [self.tableview reloadData];
});
© www.soinside.com 2019 - 2024. All rights reserved.