objective-c - down - swift uirefreshcontrol
Controles de texto de UIRefreshControl en el indicador de actualizaciĆ³n (3)
Comienzo con la programación bajo XCode 5 con iOS 7 SDK. Y cuando creo el UITableViewController
con UIRefreshControl
con ''attributeText'' tengo texto superpuesto sobre los gráficos de UIRefreshControl
(animación de progreso de círculo).
Pero cuando abro y suelto el dedo, el texto salta a su posición normal. ¿Porqué sucedió?
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(updateDeviceList) forControlEvents:UIControlEventValueChanged];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Update Devices States"];
self.refreshControl = refreshControl;
Antes de bajar hasta el final:
Después del lanzamiento de UIRefreshControl
:
Cambia tu código a la siguiente
self.refreshControl = [UIRefreshControl new];
[self.refreshControl addTarget:self action:@selector(updateDeviceList) forControlEvents:UIControlEventValueChanged];
self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Update Devices States"];
self.refreshControl = refreshControl;
Eso debería arreglar tu problema
Por favor, intente esto.
- (void)viewDidLoad
{
[super viewDidLoad];
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Pull to Refresh"];
[refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
dispatch_async(dispatch_get_main_queue(), ^{
[self.refreshControl beginRefreshing];
[self.refreshControl endRefreshing];
});
}
layoutIfNeeded
después de configurar el título
self.refreshControl = [[UIRefreshControl alloc] init];
[self.refreshControl addTarget:self action:@selector(updateDeviceList) forControlEvents:UIControlEventValueChanged];
self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Update Devices States"];
[self.refreshControl layoutIfNeeded];