同じテーブルセルに2つのテキストラベル(1つは動的でもう1つは静的)を追加する

user3211165

ビューコントローラ内にカスタムセルを含むテーブルビューがあります。私のテーブルビューは正しく機能します。私がやろうとしているのは、プログラムで下の画像を作成することです。ここで、「ラベル」はカスタムであり、入力に応じて変化するテキストです。これらの2つのラベルを(cellForRowAtIndexPath :)に含めて、セル内での位置を決定するにはどうすればよいですか。画像には2つの異なるテーブルセルが含まれています。

画像には2つの異なるテーブルセルが含まれています

ストーリーボードを介してそれを行う方法を知っていますが、xCode 4.5で動的セルを使用しているため、プログラムで行う必要があります。

画像はインデックスセル1と2を参照しています。これまで、セルごとに1つのテキストラベルしか含めることができませんでした。

- (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];
}




    switch ([indexPath row])
    {
        case 0:
        {
           // image cell - image resize and centred


            UIImageView *imv = [[UIImageView alloc]initWithFrame:CGRectMake(30,2, 180, 180)];
            imv.image=[UIImage imageNamed:@"test1.jpg"];


            imv.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
            [cell.contentView addSubview:imv];

            imv.center = CGPointMake(cell.contentView.bounds.size.width/2,cell.contentView.bounds.size.height/2);

            cell.accessoryType = UITableViewCellAccessoryNone;

            break;
        }
        case 1:
        {


            cell.textLabel.text = @"Name";


            break;
        }

        case 2:
        {
            cell.textLabel.text = @"Manufacturer";

            break;
        }

        case 3:
        {
            cell.textLabel.text = @"Overall Score";

            break;
        }

        case 4:
        {
            cell.textLabel.text = @"Description";
            cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

            break;
        }

        case 5:
        {
            cell.textLabel.text = @"Videos";
            cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

            break;
        }
            }


    return cell;

}

前もって感謝します

ジャッキージョンソン

最初にデフォルトのUITableViewCellスタイルを確認します:UITableViewCellStyleDefault、UITableViewCellStyleValue1、UITableViewCellStyleValue2、UITableViewCellStyleSubtitle。

それらを使用できる場合は、UITableViewCellをサブクラス化する必要はありません。それ以外の場合は、それを実行して、UIViewと2つのUILabelの3つのプロパティを配置する必要があります。その理由は、デフォルトのセルスタイルを使用しない場合、セル要素を移動または追加できないためです。

UITableViewCellサブクラスには、次のコードが必要です。

@interface UITableViewCellSubClass : UITableViewCell
@property (nonatomic, strong) UIView *view;
@property (nonatomic, strong) UILabel *label1;
@property (nonatomic, strong) UILabel *label2;
@end

@implementation UITableViewCellSubClass
@synthesize view;
@synthesize label1;
@synthesize label2;
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
    view = [[UIView alloc] initWithFrame:self.frame];
    [self addSubview:view];
    // initiate label1 with position (10,10,150,20)
    label1 = [[UILabel alloc] initWithFrame:CGRectMake(10,10,150,20)];
    // initiate label2 with position (170,10,150,20)
    label2 = [[UILabel alloc] initWithFrame:CGRectMake(170,10,150,20)];
    [view addSubview:label1];
    [view addSubview:label2];
}
return self;
}
@end

次に、cellForRowAtIndex:メソッドでそれを返すことができます。基本的には次のようになります。

UITableViewCellSubclass *cell = [[UITableViewCellSubclass alloc] initWithStyle:UITableViewCellDefault reuseIdentifier:@"cell"];
[cell.label1 setText:@"text"];
[cell.label2 setText:@"more text"];

これがお役に立てば幸いです。#import "UITableViewCellSubClass.h"を忘れないでください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

同じテーブルセル内の2つのアイテムのテキストの配置を変えるにはどうすればよいですか?

分類Dev

1つのステートメントで同じUUIDを2つのテーブルに挿入します(1回は主キーとして、もう1回は外部キーとして)

分類Dev

2つのテキストラベル(1つはバー用、もう1つはライン用)

分類Dev

iOSで2つの1つのラベルテキストを他のテキストの下に表示するにはどうすればよいですか?

分類Dev

同じテーブルの同じ外部キーを持つ2つのテーブルを結合するが、1つは1対多

分類Dev

アクティビティに2つのフラグメントを追加します。1つはスクロール可能なリストビューを含み、もう1つは静的コンテンツを含みます。

分類Dev

2つのSparkプロセスが1つのデルタテーブルのストリームを同時に読み取ることは可能ですか?

分類Dev

1つのテーブルで2つの外部キーを別のテーブルの同じ列を参照することはできますか?

分類Dev

1つのステートメントでkdbテーブルの同じ列を複数回クエリするにはどうすればよいですか?

分類Dev

Googleテキストドキュメントのテーブルの同じ行の2つのセルをマージすることは可能ですか?

分類Dev

2つのテーブルを1つに追加するにはどうすればよいですか?

分類Dev

1つのデータベースの3つのテーブルに同時にデータを追加することは可能ですか?

分類Dev

同じクラスを持つ任意の数の(動的)テーブルセルをマージする方法は?

分類Dev

テーブル セルの 2 つの値を比較して、同じ場合にクラスを追加する

分類Dev

1つの列が順次増加し、もう1つの列が制限に達するまで同じ数を表示する2列のテーブル

分類Dev

同じテーブルの2つの列から1つの行で異なる結果を取得するにはどうすればよいですか?

分類Dev

iText Androidテーブルの1つのセル内に画像とテキストを配置するにはどうすればよいですか?

分類Dev

2つのコマンドを1つにマージして、エンティティを選択し、数量スケジュールテーブルにプロパティセットを追加するにはどうすればよいですか?

分類Dev

コントローラにもう1つのテーブルを含める/アクセスを取得する

分類Dev

2つのベクトル(1つはキー、もう1つは値)からRでリストを作成する方法は?

分類Dev

sqliteは、まったく同じスキーマを持つ2つのデータベースから2つのテーブルを追加します

分類Dev

2つのセルのテキストを1つのセルに一致させるにはどうすればよいですか?

分類Dev

2つのテーブルを結合する-1つは選択あり、もう1つは変更なし

分類Dev

2つのテーブルに同じモデルを使用する方法。またはdbのベストプラクティス

分類Dev

mysqlの同じテーブルで1つの行に一致するものを多数見つける

分類Dev

Postgresで2つのテーブルの1つを指す外部キーを追加するにはどうすればよいですか?

分類Dev

2つのプロットをプロットします。1つは2つのシリーズ(および2つのスケール)で、もう1つは同じスケールの2つのシリーズです

分類Dev

2つのブートストラップカルーセルを同じページに配置するにはどうすればよいですか?

分類Dev

同じ名前で3つの関数を作成する方法1つはコールバック、2つ目はpromise、もう1つはasync / awaitです

Related 関連記事

  1. 1

    同じテーブルセル内の2つのアイテムのテキストの配置を変えるにはどうすればよいですか?

  2. 2

    1つのステートメントで同じUUIDを2つのテーブルに挿入します(1回は主キーとして、もう1回は外部キーとして)

  3. 3

    2つのテキストラベル(1つはバー用、もう1つはライン用)

  4. 4

    iOSで2つの1つのラベルテキストを他のテキストの下に表示するにはどうすればよいですか?

  5. 5

    同じテーブルの同じ外部キーを持つ2つのテーブルを結合するが、1つは1対多

  6. 6

    アクティビティに2つのフラグメントを追加します。1つはスクロール可能なリストビューを含み、もう1つは静的コンテンツを含みます。

  7. 7

    2つのSparkプロセスが1つのデルタテーブルのストリームを同時に読み取ることは可能ですか?

  8. 8

    1つのテーブルで2つの外部キーを別のテーブルの同じ列を参照することはできますか?

  9. 9

    1つのステートメントでkdbテーブルの同じ列を複数回クエリするにはどうすればよいですか?

  10. 10

    Googleテキストドキュメントのテーブルの同じ行の2つのセルをマージすることは可能ですか?

  11. 11

    2つのテーブルを1つに追加するにはどうすればよいですか?

  12. 12

    1つのデータベースの3つのテーブルに同時にデータを追加することは可能ですか?

  13. 13

    同じクラスを持つ任意の数の(動的)テーブルセルをマージする方法は?

  14. 14

    テーブル セルの 2 つの値を比較して、同じ場合にクラスを追加する

  15. 15

    1つの列が順次増加し、もう1つの列が制限に達するまで同じ数を表示する2列のテーブル

  16. 16

    同じテーブルの2つの列から1つの行で異なる結果を取得するにはどうすればよいですか?

  17. 17

    iText Androidテーブルの1つのセル内に画像とテキストを配置するにはどうすればよいですか?

  18. 18

    2つのコマンドを1つにマージして、エンティティを選択し、数量スケジュールテーブルにプロパティセットを追加するにはどうすればよいですか?

  19. 19

    コントローラにもう1つのテーブルを含める/アクセスを取得する

  20. 20

    2つのベクトル(1つはキー、もう1つは値)からRでリストを作成する方法は?

  21. 21

    sqliteは、まったく同じスキーマを持つ2つのデータベースから2つのテーブルを追加します

  22. 22

    2つのセルのテキストを1つのセルに一致させるにはどうすればよいですか?

  23. 23

    2つのテーブルを結合する-1つは選択あり、もう1つは変更なし

  24. 24

    2つのテーブルに同じモデルを使用する方法。またはdbのベストプラクティス

  25. 25

    mysqlの同じテーブルで1つの行に一致するものを多数見つける

  26. 26

    Postgresで2つのテーブルの1つを指す外部キーを追加するにはどうすればよいですか?

  27. 27

    2つのプロットをプロットします。1つは2つのシリーズ(および2つのスケール)で、もう1つは同じスケールの2つのシリーズです

  28. 28

    2つのブートストラップカルーセルを同じページに配置するにはどうすればよいですか?

  29. 29

    同じ名前で3つの関数を作成する方法1つはコールバック、2つ目はpromise、もう1つはasync / awaitです

ホットタグ

アーカイブ