gpt4 book ai didi

ios - UITableView - 选择时出现问题

转载 作者:行者123 更新时间:2023-11-29 11:22:27 27 4
gpt4 key购买 nike

您好! 我在选择单个单元格时遇到问题。如果我的单个单元格被选中 - 我的 subview UIButton 也会突出显示。该怎么办?

谢谢大家!

这是我的代码:

//
// ThumbnailsBrowser.m
// PHOTO_VIDEO
//
// Created by dev on 07.06.11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//

#define COUNT 3 // Total number of elements in a single cell.
#define SPINNER_SIZE 20 // Size of spinner in a single cell.
#define THUMBNAIL_SIZE 200 // Size of thumbnail in a single cell.
#define CELL_SIZE 300 // Size of single cell in a table view.

#import "ThumbnailsBrowser.h"

@implementation ThumbnailsBrowser

- (void)sharedDelegate{
[self setDelegate:self];
[self setDataSource:self];
}

- (void)initWithThumbnailsUrl:(NSMutableArray *)url{

}


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 10;
}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return CELL_SIZE;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *CellIdentifier = @"Thumbnails";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];

for(NSInteger i = 0; i < COUNT; i++){

// Calculate spinner.
float size_one_section = (self.frame.size.width / COUNT);
float size_center_object = size_one_section / 2;
float init_coord_object = size_center_object - (SPINNER_SIZE / 2);
float center_object_y = CELL_SIZE / 2 - (SPINNER_SIZE / 2);
[cell.contentView addSubview:[self activityIndicatorView:CGRectMake(init_coord_object + i * size_one_section, center_object_y, SPINNER_SIZE, SPINNER_SIZE)]];

// Calculate thumbnails.
float init_coord_objectT = size_center_object - (THUMBNAIL_SIZE / 2);
float center_object_yT = CELL_SIZE / 2 - (THUMBNAIL_SIZE / 2);
[cell.contentView addSubview:[self thumbnailsView:CGRectMake(init_coord_objectT + i * size_one_section, center_object_yT, THUMBNAIL_SIZE, THUMBNAIL_SIZE)]];

}

// Set selected cell color.
UIView *bgColorView = [[UIView alloc] init];
[bgColorView setBackgroundColor:[UIColor blackColor]];
[cell setSelectedBackgroundView:bgColorView];
[bgColorView release];

}

return cell;

}


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

}

// Create UIActivityIndicatorView and return to cell table view.
- (UIActivityIndicatorView *)activityIndicatorView:(CGRect)frame{

UIActivityIndicatorView * spinner =
[[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite] autorelease];
[spinner setFrame:frame];
[spinner startAnimating];
return spinner;

}

// Create thumbnails view.
- (UIButton *)thumbnailsView:(CGRect)frame{

UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[myButton setFrame:frame];
return myButton;

}

@end

最佳答案

  • (UIButton *)thumbnailsView:(CGRect)frame{

    UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];

    [myButton setFrame:frame];

    [myButton addTarget:self action:@selector(urfunctionName) forControlEvents:UIControlEventTouchUpInside];

    返回我的按钮;

}在 .h 中声明此函数

-(void)urfunctionName;

-(void)urfunctionName{

-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

[tableView deselectRowAtIndexPath:indexPath animated:NO];



//here call ur buton function

[self urfunctionName];

关于ios - UITableView - 选择时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6267692/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com