2012-02-25 3 views

ответ

0

К сожалению, обратного вызова нет, но поскольку поведение по умолчанию заключается в настройке значения «альфа» UITableViewCell, вы можете проверить это в «- (void) layoutSubview» вашего подкласса UITableViewCell.

- (void)layoutSubviews 
{ 
    [super layoutSubviews]; 
    if (self.alpha < 0.99) { 
     // we are most likely being dragged 
    } else { 
     // restore for not being dragged 
    } 
} 

Обратите внимание, что это немного взломан. Я заметил, что это не сработает, если для параметра separatorStyle в табличном представлении установлено значение «UITableViewCellSeparatorStyleNone».

0

Я не знаю, возможно ли это в рамках. Но если это не так, вы можете попробовать переопределить метод touchhedMoved в подклассе UITableViewCell?

Возможно, вы также сможете получить состояние своего TableView (редактирование или нет) в пользовательском подклассе UItableViewCell.

0

Возможно, да!

В ViewController.h

#import <UIKit/UIKit.h> 
@interface ViewController : UIViewController <UIScrollViewDelegate> 
{ 
    IBOutlet UITableView * myTable; 
    IBOutlet UIScrollView * myScroll; 
} 

В ViewController.m

#pragma mark - View lifecycle 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 

    myScroll = myTable; 
    myScroll.delegate = self; 


} 

#pragma Mark UIScrollViewDelegate 
- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    NSLog(@"%f",scrollView.contentOffset.y); 
} 

То есть это.

+1

Это будет вызываться всякий раз, когда просматривается вид таблицы, независимо от того, перетаскивается ли ячейка. – akaru

0

Возможно это да! Но вы должны следить за состояниями в контроллере представления. Определить элемент BOOL tableDrag = NO; В способе scrollViewWillBeginDragging вы установили tableDrag = YES; А в методе scrollViewDidEndDragging вы устанавливаете tableDraw = NO;

Теперь в методе делегата scrollViewDidScroll вы можете установить фон.

Если у вас есть несколько скроллеров, пометьте прокруткой, чтобы вы знали, какой из них перетаскивает.

Надеюсь, это поможет!

Смежные вопросы