0

私の設計仕様では、テーブル ビューには、上、左、右に 3 つの境界線のみが必要です。次のコードを使用して追加しました....

CGSize mainViewSize = menu_table.bounds.size;
CGFloat borderWidth = 1;
UIColor *borderColor = [UIColor lightGrayColor];
UIView *leftView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, borderWidth, mainViewSize.height)];
UIView *rightView = [[UIView alloc] initWithFrame:CGRectMake(mainViewSize.width - borderWidth, 0, borderWidth, mainViewSize.height)];
UIView *topView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, mainViewSize.width, borderWidth)];
leftView.opaque = YES;
rightView.opaque = YES;
topView.opaque = YES;
leftView.backgroundColor = borderColor;
rightView.backgroundColor = borderColor;
topView.backgroundColor = borderColor;

// for bonus points, set the views' autoresizing mask so they'll stay with the edges:
leftView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleRightMargin;
rightView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleLeftMargin;
topView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin;

[menu_table addSubview:leftView];
[menu_table addSubview:rightView];
[menu_table addSubview:topView];

正常に動作していますが、テーブルをスクロールすると、追加されたサブビューも上に移動します。サブビューがセルで移動するのではなく、テーブルで修正する必要がある理由がわかりません。何が問題で、テーブルビューのサイズでそれを修正する方法がわかりません。ありがとう。

4

1 に答える 1