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

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
PiXcell
2 / 2 / 0
Регистрация: 10.03.2014
Сообщений: 43
#1

Как вывести весь лог с консоли (от NSLog) в UILabel окошко? - Программирование iOS

20.08.2014, 11:52. Просмотров 1015. Ответов 5
Метки нет (Все метки)

Всем привет!
Подскажите, как вывести лог консоли в окошко label? Чтоб скролился и накапливался, а не обновлялся при новой записи.
например вот пример одного из учебных материалов, там надо сделать кнопки по которым в консоль выводится список контактов, сообщения о редактировании адресной книжки и о созданных или удаленных группах.
в задании просто кнопки с выводом в консоль, но хочется их в уилебле видеть (все), но не знаю как это сделать...
замена нслога на уилебел.текст = стинг - не накапливает сообщения а выводит новые с затиранием предыдущего.

вообщем задача заменить консоль вывода (нижнее окно икскода) на текст в окошечке (желательно без начальной инфы о имени проекта)
скрин:
0
Миниатюры
Как вывести весь лог с консоли (от NSLog) в UILabel окошко?  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.08.2014, 11:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как вывести весь лог с консоли (от NSLog) в UILabel окошко? (Программирование iOS):

Как перевернуть объект UILabel на 180 градусов - Программирование iOS
задумал я сделать зеркальное отображение в верхней половине экрана экземпляра UILabel, который находится в нижней половине экрана. И не...

Пляски вокруг UILabel (как нормально настроить перенос текста?) - Программирование iOS
Всем привет, существует задача - один вью контроллер с одной UILabel на нем. Текст этого лейбла динамически изменяется, должно быть всегда...

Лог в окно консоли - PascalABC.NET
Всем привет! Имеется программа, работающая Windows Forms. В ней есть, к примеру, следующий код: <...> var message: String :=...

Маленькое окошко "установка личных параметров для windows mail 7" и весь мир подождет - Windows Vista
Добрый день, всем! Очень нужна помощь извне. Потому что уже пошел 3 день и 4 проблемный ноутбук знакомых на коленках... Ситуация...

Лог коммутатора как перевести лог - Сетевое оборудование
Добрый день! Помогите пожалуйста перевести лог. Oct 12 14:33:49.378 MSK: %SEC-6-IPACCESSLOGDP: list Access_From_Guest_VLAN denied...

Как вывести весь массив? - Turbo Pascal
В общем такая фигня, есть несколько вопросов по теории массивов, а то препод блин дура, сама только с универа-ничего толком не может...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Victorianec
20 / 20 / 6
Регистрация: 09.01.2014
Сообщений: 118
20.08.2014, 12:47 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Objective-C
1
2
3
4
5
6
7
NSString *log = @"";  //общий лог
 
- (void)showLog {
NSString *currentLog; //берете откуда вам надо то, что хотите добавить в лог
log = [log stringByAppendingString:[NSString stringWithFormat:@"%@ \n", currentLog]];  //формируется новый лог с дополнениями
self.logLabel.text = log; //выводите
}
1
PiXcell
2 / 2 / 0
Регистрация: 10.03.2014
Сообщений: 43
20.08.2014, 17:11  [ТС] #3
а можно подробнее, как вызывать showLog? может в виде функции с возвратом значения? (нсстирнг)

подскажите еще раз, подробнее, например на этом кусочке:
--
Objective-C
1
2
3
4
5
6
7
8
- (IBAction)showContacts {
    if (!self.accessGranted)
    {
        NSLog(@"Доступ к адресной книге закрыт");
        return;
    }
...
}
Добавлено через 40 минут
сделал так:
Objective-C
1
2
3
4
5
6
7
NSString *currentLog = @"";  //общий лог
 
-(NSString *)showlog: (NSString *) msgInLog
{
    currentLog = [currentLog stringByAppendingString:[NSString stringWithFormat:@"%@ \n", msgInLog]];  //формируется новый лог с дополнениями
    return self.logForNSLog.text = currentLog; //вывод
}
теперь здесь можно написать так:
Objective-C
1
2
3
4
5
6
7
8
9
- (IBAction)showContacts {
    if (!self.accessGranted)
    {
        [self showlog:@"Доступ к адресной книге закрыт"];
        //        NSLog(@"Доступ к адресной книге закрыт");
        return;
    }
...
}
но вот как передать двойную строку типа:
Objective-C
1
2
NSLog(@"First name = %@", firstName);
NSLog(@"Last name = %@", lastName);
вопрос

вариант в две строки не красив, да и в фунции есть переход на новую строку, вообщем:
Objective-C
1
2
[self showlog: @"First name = "];
[self showlog: firstName];
это не то

подскажите еще варианты?
может вместо строк в фунции шовлог сделать мутаблмассив, и его выводить?
но все равно, как быть с двойными строками типа: NSLog(@"First name = %@", firstName);

вообщем понятно что вопросы детские, но я только учусь, и спрашиваю совета.

Добавлено через 43 минуты
некоторые поля в строках типа
Objective-C
1
NSLog(@"First name = %@", firstName);
не строки, а номера телефонов, емейлы...
тесть когда привожу их к общей строке, то компилятор ругается на несоответствие типов...
0
Victorianec
20 / 20 / 6
Регистрация: 09.01.2014
Сообщений: 118
20.08.2014, 18:49 #4
Почитайте про
Objective-C
1
[NSString stringWithFormat:]
Именно для двойной строки
Objective-C
1
NSString *logString = [NSString stringWithFormat:@"First name = %@, Last name = %@", firstNameField.text, lastNameField.text];//firstNameField.text, lastNameField.text - текст из ваших полей, или строки вставляйте, как хотите
для типов выводимых данных:
%@ - строки
%i - integer'ы
%f - float'ы
Об остальном почитайте, в особенности документацию по классу NSString
1
PiXcell
2 / 2 / 0
Регистрация: 10.03.2014
Сообщений: 43
20.08.2014, 21:12  [ТС] #5
Спасибо! Все получилось
теперь еще один вопрос:
как сделать скролл-прокрутку в окошке лейбл, и чтоб текст всегда показывался последний (так же как в логе в консоли)?
0
Миниатюры
Как вывести весь лог с консоли (от NSLog) в UILabel окошко?  
Vorona
Peace 2 all shining faces
668 / 530 / 45
Регистрация: 05.03.2010
Сообщений: 1,283
21.08.2014, 02:49 #6
Цитата Сообщение от PiXcell Посмотреть сообщение
как сделать скролл-прокрутку в окошке лейбл
используйте UITextView
лейбл по своей семантике больше подходит для размещения небольшого контента
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.08.2014, 02:49
Привет! Вот еще темы с ответами:

Как вывести весь текст сайта в C# программу? - C#
1)Есть сайт не мой. 2)На нем есть история например выпадания случайных чисел каждую минуту.(т.е обновляется ежесекундно) Так вот...

Как вывести изображение мозаикой во весь Timage - Delphi
Допустим я вывел изображение в TImage и это изображение меньше его размеров. Как сделать так, чтобы картинка в нём повторялась и заполняла...

Как вывести весь List<char> в textBox? - C#
Господа , не пойму почему в textBox выводиться не весь список ??? Как вывести весь???:(

Как вывести весь столбик из таблицы в DBComboBox1 - Delphi БД
прошу помоч реалтизовать в программе DBComboBox1 есть база данных Access : три таблицы отдел, книга, зал, пользователь. база...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.08.2014, 02:49
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru