4

我正在寻找一种方法来更改重新排序控制图像和大小。

在此处输入图像描述

我使用此代码更改重新排序图像:

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    for (UIControl *control in cell.subviews)
    {
        if ([control isMemberOfClass:NSClassFromString(@"UITableViewCellReorderControl")] && [control.subviews count] > 0)
        {
            for (UIControl *someObj in control.subviews)
            {
                if ([someObj isMemberOfClass:[UIImageView class]])
                {
                    UIImage *img = [UIImage imageNamed:@"btn_move.png"];
                    ((UIImageView*)someObj).frame = CGRectMake(0, 0, 30, 24);
                    ((UIImageView*)someObj).image = img;
                }
            }
        }
    }
} 

此代码在 iOS 6 上完美运行,但不适用于 iOS 7。

我怎样才能解决这个问题?还有其他方法可以更改重新排序控制图像吗?

4

1 回答 1

8

尝试

for(UIView* view in self.table.subviews)
        {
            if([[[view class] description] isEqualToString:@"UITableViewWrapperView"])
            {
                for(UIView* viewTwo in view.subviews) {
                    if([[[viewTwo class] description] isEqualToString:@"UITableViewCell"]) {
                        for(UIView* viewThree in viewTwo.subviews) {
                            if([[[viewThree class] description] isEqualToString:@"UITableViewCellScrollView"]) {
                                for(UIView* viewFour in viewThree.subviews) {
                                    if([[[viewFour class] description] isEqualToString:@"UITableViewCellReorderControl"]) {
                                        for(UIImageView* viewFive in viewFour.subviews) {
                                            // your stuff here
                                        }

                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
于 2013-09-22T10:46:54.903 回答