上の画像のようなものをどうやって手に入れることができるのだろうと思っています。これをどのように作成しますか? また、サンプル コードを入手した人はいますか?
質問する
98 次
3 に答える
1
テーブルのカスタムセルを作成し、必要に応じてセルを設計する必要があります。textView などを配置し、そのカスタム セルを使用してテーブルを読み込みます。
于 2013-03-28T10:58:29.953 に答える
0
カスタム セルをデザインします (必要に応じて、ラベルにカスタム フォントを使用して正確な外観を取得します)。
カスタムセル設計
そして、Cell for row at index デリゲート メソッドを次のようにカスタマイズします。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// static NSString *CellIdentifier = @"Cell";
// UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
// if (cell == nil) {
// cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
// }
//
// Configure the cell...
//Customiztion of cell
static NSString *cellIdentifier=@"cell";
SampleTableCell *cell = (SampleTableCell *) [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil)
{
NSString *customeCellName = [NSString stringWithFormat:@"%@",[SampleTableCell class]];
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:customeCellName owner:self options:nil];
for (id currentObject in topLevelObjects)
{
if ([currentObject isKindOfClass:[UITableViewCell class]])
{
cell = (SampleTableCell *) currentObject;
break;
}
}
}
cell.label1.text = @"Server";
cell.label2.text = @"vereist"
return cell;
}
于 2013-03-28T11:06:13.043 に答える
0
それはカスタムと呼ばUITableViewCell
れ、2 つのコントロールで構成されています。
1 UILabel
2 UITextField
この 2 つのコントロールcellForRowAtIndexPath
を特定のフレーム サイズで配置します。
また
このコード全体をそのまま入れます。
- (void)viewDidLoad
{
[super viewDidLoad];
self.tblView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height - 23) style:UITableViewStyleGrouped];
self.tblView.delegate = self;
self.tblView.dataSource = self;
self.tblView.backgroundView = nil;
self.tblView.backgroundColor = [UIColor clearColor];
self.tblView.separatorStyle = UITableViewCellSeparatorStyleNone;
[self.view addSubview:self.tblView];
self.placeHolderValue = [[NSMutableArray alloc]initWithObjects:@"server ", @"account", @"Roof Coverings", @"Wall token", @"Roof", @"Floor", @"Guttering", nil];
self.textFields = [NSMutableArray array];
self.textLabels = [NSMutableArray array];
for (int i = 0; i < self.placeHolderValue.count; i++)
{
UITextField *textFiled = [[UITextField alloc] initWithFrame:CGRectMake(155.0, 0.0, 150.0, 44.0)];
textFiled.placeholder = @"Vereist";
textFiled.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
textFiled.autocorrectionType = UITextAutocorrectionTypeNo;
textFiled.autocapitalizationType = UITextAutocapitalizationTypeNone;
textFiled.borderStyle = UITextBorderStyleNone;
textFiled.clearButtonMode = UITextFieldViewModeAlways;
textFiled.delegate = self;
textFiled.tag = i+1;
textFiled.font = [UIFont systemFontOfSize:14];
if (self.listOfDetails.count > 0)
{
textFiled.text = [[self.listOfDetails objectAtIndex:0] objectForKey:[self.dbFieldName objectAtIndex:i]];
isEmpty = NO;
}
[self.textFields addObject:textFiled];
UILabel *lab = [[UILabel alloc]initWithFrame:CGRectMake(15, 0, 140, 44)];
lab.text = [self.placeHolderValue objectAtIndex:i];
lab.textAlignment = NSTextAlignmentLeft;
lab.numberOfLines = 0;
lab.font = [UIFont systemFontOfSize:14];
lab.backgroundColor = [UIColor clearColor];
[self.textLabels addObject:lab];
}
}
#pragma mark -
#pragma mark Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
return self.placeHolderValue.count;
}
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
//static NSString *CellIdentifier = @"Cell";
NSString *CellIdentifier = [NSString stringWithFormat:@"S%1dR%1d",indexPath.section,indexPath.row];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
[cell.contentView addSubview:[self.textLabels objectAtIndex:indexPath.row]];
[cell.contentView addSubview:[self.textFields objectAtIndex:indexPath.row]];
}
return cell;
}
于 2013-03-28T11:00:00.957 に答える