0

私はObjective-Cが初めてです。について調べてみましたUITableView

私はこれを作成しましたUITableView。すべての行の代わりに"a"、次のようなシーケンスにしたいのですが、"a b c d..."行数を増やすとスクロールする必要があります。スクロールしないので、ここに私のコードがあります。

#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
    CGRect frame = self.view.frame;
    UITableView *tableView = [[UITableView alloc] initWithFrame:frame  style:UITableViewStylePlain];
    tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
    tableView.backgroundColor = [UIColor cyanColor];
    tableView.delegate = self;
    tableView.dataSource = self;
    [self.view addSubview:tableView];
    [super viewDidLoad];
}
- (void)viewDidUnload
{
[super viewDidUnload];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 20;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cellIDent"];
    cell.textLabel.text = @"a";
    return cell;
}
@end
4

4 に答える 4

3

IB でテーブル ビューのデリゲートを設定するか、プログラムで作成した場合は viewDidLoad で 1 つの配列を取り、動的または静的に入力します。NumberOfRowsInsection メソッドで配列カウントを指定し、適切な場所でテーブル ビューをリロードします

于 2013-02-04T13:37:18.823 に答える
0

このチュートリアルをチェックしてください、私はそれがあなたを助けると確信しています

UItableViewガイド

スクロールの場合は、自分で何もする必要はありません。セルの数が指定されたサイズを超えると、自動的にスクロール可能になり、UITableView属性インスペクターでスクロールが有効になっていることを確認してください。画像を確認してください。

ここに画像の説明を入力してください

ハッピーコーディング

よろしく

于 2013-01-17T07:23:09.337 に答える
0

cellForRowAtIndexPathに:これらの行を追加します

char ch = 'a' + indexPath.row;
cell.textLabel.text = [NSString stringWithFormat:@"%c" , ch];
于 2013-01-17T07:25:04.017 に答える
0

以下のコードを使用してください.....グローバルにalphabetarrを定義してから、コードで使用してください...

- (void)viewDidLoad
{
    alphabetarr = [[NSArray alloc] initWithObjects:@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",@"i",@"j",@"k",@"l",@"m",@"n",@"o",@"p",@"q",@"r",@"s",@"t",@"u",@"v",@"w",@"x",@"y",@"z", nil];

    CGRect frame = self.view.frame;
    UITableView *tableview = [[UITableView alloc] initWithFrame:frame];
    tableview.backgroundColor = [UIColor cyanColor];
    tableview.separatorColor = [UIColor blackColor];
    tableview.delegate = self;
    tableview.dataSource = self;
    [self.view addSubview:tableview];
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [alphabetarr count];
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return 30.0 ;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell!=nil) {
        cell = nil;
    }
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
    }

        cell.textLabel.text = [alphabetarr objectAtIndex:indexPath.row];


    return cell;
}
于 2013-01-17T07:48:42.487 に答える