2009-07-23 9 views
1

注:iPhone SDK 3.0の最終版 バージョンのLeopardを使用しています。iPhone開発 - UITableViewCellStyleValue2

iPhoneのフォトアルバムアプリケーションで使用されているものと同様のリストを用意する必要があります。 UITableViewCellのための2つの新しいスタイルがあります。

  1. UITableViewCellStyleValue1
  2. UITableViewCellStyleValue2

私はカスタムセルクラスを作成するのではなく、これらを使用することができると思ったが、彼らが正常に動作しないように見えます。 UITableViewCellStyleValue2の次の問題に直面しています。

  1. 私は画像を表示できません。
  2. textLabeldetailTextLabelのフォントサイズを変更すると、値が揃っていません。 UITableViewCellStyleDefaultUITableViewCellStyleSubtitle画像を表示すると、コードの作業の

    // Customize the appearance of table view cells. 
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    
        static NSString *CellIdentifier = @"Cell"; 
    
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
        if (cell == nil) { 
         cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue2 reuseIdentifier:CellIdentifier] autorelease]; 
        } 
    
        // Configure the cell. 
        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 
        cell.imageView.image = [UIImage imageNamed:@"Pointy.gif"]; 
    
        cell.textLabel.text = @"Label"; 
        cell.textLabel.textColor = [UIColor redColor]; 
        cell.textLabel.font = [UIFont systemFontOfSize:21]; 
    
        cell.detailTextLabel.text = @"(10)"; 
        cell.detailTextLabel.textColor = [UIColor grayColor]; 
        cell.detailTextLabel.font = [UIFont systemFontOfSize:17]; 
    
        return cell; 
    } 
    

    この作品:

は、ここでのサンプルコードです。 UITableViewCellStyleValue2はセルイメージプロパティをサポートしていますか?画像領域(セルの左隅)の代わりに空白が表示されます。ここで何か間違っているのですか?

これがうまくいかない場合、どうすればUITableViewCellStyleValue2スタイルに似たスタイルのカスタムセルクラスを作成できますか?私は特にdetailTextLabelを左にtextLabelと整列させることに興味があります。

ありがとうございます。

答えて

2

新しい組み込みスタイルのレイアウトは、システムレイアウトの数(AddressBookのセルなど)と同じ設定のフィールドセットをレイアウトします。あなたの正確な特定に関しては

  1. UITableViewCellStyleValue2が
  2. 組み込みスタイルのレイアウトロジックフォントメトリックを前提とした画像を持っていないが、彼らがに設定されているものです。それらを変更すると、フィールドは一直線にならない

documentationの各組み込みスタイルから入手可能なものの詳細な説明を得ることができます。あなたのニーズを設定していない場合は、UITableViewCellのサブクラス化、独自のサブビューの追加、およびlayoutSubviewsでのレイアウトが必要です。 Appleには、TableViewSuiteへの多くの例があります。

+0

ありがとうございます。私はTableViewSuitに精通しており、カスタムTableViewCellで作業しています。私が達成しようとしている結果は、画像付きのUITableViewCellStyleValue2のようなものです。 TableViewSuiteの例では、詳細な状況には対応していません。ラベルはメインラベルに「左」に揃えられています。例えばアルバム内の画像の数がそのアルバムの名前のすぐ隣に書かれているフォトアルバムアプリケーション...「保存した写真(102)」ここで「(102)」は灰色です。 – Mustafa

+1

問題の内容を理解できません。カスタムサブビューを実装している場合は、必要な部分ビューを自由に配置できます。 "leftAlignedImage"という名前のアイバとプロパティを追加するか、または同様のものを追加し、layoutSubviewsのフレームを0,0、cellheight、cellhieightに設定します)。 –

+0

@ルイス:イメージとテキストを配置し、定義された場所に詳細テキストを配置することは問題ではなく、各セルの計算された位置に配置することが問題です。私が探している結果は、フォトアルバムアプリケーションのようなものです。私は問題を持つ可能な解決策を掲示しました:) – Mustafa