Форум программистов, компьютерный форум CyberForum.ru

Передача переменных прогресс бару другого класса - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Работа @property в одном классе в разных методах http://www.cyberforum.ru/objective-c/thread1305811.html
Пишу application osx под mac, а на е под ios. Не получается передать значения между методами о_О сам в шоке. //.h @property (nonatomic,retain) NSString* UserID1; //*.m //первая кнопка - нажатие - (IBAction)sendMessage:(id)sender {
Objective-C Use un undeclared identifier 'Pro' (в конце листинга) @interface Macbook: NSObject { NSMutableString *year; NSMutableString *model; NSMutableString *complete; } -(void) print; -(void) setYear: (NSMutableString*) y; -(void) setModel: (NSMutableString*) m; http://www.cyberforum.ru/objective-c/thread1305605.html
Objective-C NSURLSession: html-страница вместо json
Доброго вечера. Пытаюсь пройти регистрацию на сайте. Создаю запрос, метод POST. Но вместо ожидаемого json`а, мне возвращается html-страница. Также проверил полный созданный URL на Rest Client`е, все работает, в приложение приходит json. NSString *paramsRegistrationURL = , params, ...
Ошибка: "Необъявленная переменная m" Objective-C
Всем добрый день. Подскажите пожалуйста как исправить ошибку: "Необъявленная переменная m в методе class". @interface Macbook: NSObject { int year; int model; } -(void) print; -(void) setYear: (int) y; -(void) setModel: (char) m;
Objective-C Как записать данные в соответствующую категорию с Core Data? http://www.cyberforum.ru/objective-c/thread1305142.html
У меня есть Table View, где перечислены каталоги (Английский, Испанский, Китайский). Зайдя в каталог, я могу создать новую запись ( за это отвечает View Controller). При создании записи, она появляется во всех трех каталогах (англ, испан и кит). Как сделать так, чтобы она появилась лишь в соответствующем каталоге? Использовал Core Data. #import "CardTableViewController.h" @import...
Objective-C Исчезает разделитель при скролле UITableView При скролле вверх разделитель исчезает Есть способ исправить это? подробнее

Показать сообщение отдельно
Surfaker
 Аватар для Surfaker
3 / 3 / 1
Регистрация: 01.04.2014
Сообщений: 117
21.11.2014, 01:35     Передача переменных прогресс бару другого класса
Доброго времени суток! Хочу задать вопрос - как мне из класса одного метода передать переменную в метод другого класса?
У меня есть класс ячейки таблицы в которой есть прогресс бар
DMTableViewCell.h
Objective-C
1
2
3
4
5
6
@interface DMTableViewCell : UITableViewCell
 
@property (strong, nonatomic) UIProgressView* progressBar;
@property (strong, nonatomic) UILabel* nameOfDocumentLabel;
 
@end
в имплементации пусто.

Есть таблица, обьявленная глобально во ViewController'e.
В методе tableView:cellForRowAtIndexPath создаю объект класса DMTableViewCell и вставляю в ячейку прогресс бар
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
-(DMTableViewCell*) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString* identifier = @"cell";
    DMTableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:identifier];
    if (!cell) {
        cell = [[DMTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
    }
    
    cell.progressBar = [[UIProgressView alloc] initWithFrame:CGRectMake(cell.bounds.size.width/2+10,
                                                                        cell.bounds.size.height/2,
                                                                        120,
                                                                        5)];
    [cell addSubview:cell.progressBar];
    return cell;
}
вот хедер контроллера
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#import <UIKit/UIKit.h>
#import "DMTableViewCell.h"
 
@interface ViewController : UIViewController <UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate>
 
@property (strong, nonatomic) UITableView* tableView;
@property (strong, nonatomic) UITextField* searchField;
@property (strong, nonatomic) NSMutableArray* countOfRows;
@property (strong, nonatomic) UIButton* downloadButton;
@property (strong, nonatomic) NSMutableData *objectData;
@property (assign, nonatomic) CGFloat sizeOfPath;
@property (assign, nonatomic) long long expectedMBytes;
 
@end
и есть методы, которые отвечают за скачивание файла (NSURLConnection) и за размеры скачанного-оставшегося и тд. переменные эти объявлены пропертями в хедере контроллера.
Вопрос - как передать эти значения прогресс бару?
З.Ы. tableView:cellForRowAtIndePath находится в имплементации контроллера.
З.Ы.Ы. вот методы скачки
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [self.objectData appendData:data];
    self.sizeOfPath = (CGFloat)[self.objectData length];
    NSLog(@"data has recieved %.1f", self.sizeOfPath/1000000);
    CGFloat progress = self.sizeOfPath/self.expectedMBytes;}
 
-(void)connection:(NSURLConnection*)connection didReceiveResponse:(NSURLResponse*)response {
    self.expectedMBytes = [response expectedContentLength];
    NSLog(@"%lld", self.expectedMBytes);
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
    //NSString *fileName = @"/Users/evgeniaazarova/Library/filename";
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *fileName = [paths objectAtIndex:0];
    [self.objectData writeToFile:fileName atomically:YES];
    NSLog(@"download finished");
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
}
З.Ы.Ы.Ы. если создавать отдельный прогресс бар (не в ячейке таблицы) то он работает хорошо и прогресс у него работает вот так
Objective-C
1
self.progressBar.progress = self.sizeOfPath/self.expectedMBytes;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru