私はUITableView
透明なを持っておりbackgroundColor
、内部のセルは次のコードで初期化されています
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
self.label = [[UILabel alloc] initWithFrame:CGRectMake(0, 10, CGRectGetWidth(self.contentView.frame), 180)];
self.label.autoresizingMask = UIViewAutoresizingFlexibleWidth;
self.label.text = @"test";
[self.contentView addSubview:self.label];
}
return self;
}
各行の高さは 200 で、ラベルはセル全体を埋めません。各セルの間に透明な部分があります。それらの透明な部分をタッチしてテーブルをスクロールしようとすると、タッチは完全に無視されます。iOS5 の時点で、ビューへのタッチは無視されることを承知しています。これを解決するにはどうすればよいですか?
私が試したことはうまくいきません:
透明または非表示またはアルファ = 0UIView
を設定して、tableView の偽の背景として機能する
同じ取引、タッチは無視されます。
UIView
tableView の上にサブクラスを作成し、サブクラスUIView
が tableView を nextResponder として使用する
どうやらUITableView
touchesBegan/cancelled/ended/moved を使用していないため、これは機能しません。どちらかをスクロールするメソッドを実装するのは賢明ではないと思いUITableView
ます。
tableView の backgroundColor を[UIColor colorWithRed:0 green:0 blue:0 alpha:0.1]
私はこれをしたくありません、それはまだ見えています。
要するに、透明部分からスクロールを開始した場合でも、テーブルをスクロールするにはどうすればよいですか?