0

テーブルビューのヘッダーを作成しています。そのヘッダーにビューを追加しています。そのビューには、2 つのイメージビューとボタンがあります。

ボタンが反応しません (上部の非常に小さな領域が反応します) なぜこれが起こっているのですか?助けてください?

「setAutoresizingMask:UIViewAutoresizingNone」のようないくつかのSO回答を試しましたが、何も機能していません

これが私のコードです

 -(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
 {


  // ADDING A VIEW     

   UIView *header = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 310, 39.0)];
   header.backgroundColor = [UIColor clearColor];
   header.userInteractionEnabled = YES;
  [header setAutoresizingMask:UIViewAutoresizingFlexibleHeight];


  // ADDING IMAGE VIEW

    UIImageView *image = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 310, 39.0)];
    image.image = [UIImage imageNamed:@"headertop.png"];
    [image setUserInteractionEnabled:TRUE];
    [header addSubview:image];


  // ADDING ANOTHER IMAGEVIEW (beneath the view's frame)

    UIImageView *downImage = [[UIImageView alloc]initWithFrame:CGRectMake(0 , 39, 310, 23)];
    downImage.image = [UIImage imageNamed:@"headerbottom.png"];
   [header addSubview:downImage];




 // ADDING BUTTON


  UIButton *placeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
  [placeBtn addTarget:self
             action:@selector(goToRestPage:)
   forControlEvents:UIControlEventTouchUpInside];
   placeBtn.tag = section;
   placeBtn.backgroundColor = [UIColor yellowColor];

   placeBtn.frame = CGRectMake(75,20, 150, 20);
   [header addSubview:placeBtn];





     return header;

  }
4

2 に答える 2

5

このメソッドを使用します。この方法を見逃していると思います。

-(float)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
{
     return  30.0;
}

または、このメソッドは既に存在するため、ヘッダーの高さを増やします。

-(float)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
{
     return  80.0;
}
于 2013-06-26T13:14:10.387 に答える
0

これをしてください:

User Interaction Enabled が XIB から TRUE に設定されました。デフォルトでは FALSE です。

ありがとう、

于 2013-06-26T13:08:16.283 に答える