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

Objective-C

Войти
Регистрация
Восстановить пароль
 
Fennec
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 36
#1

Не происходит viewdidload - Objective-C

13.06.2012, 18:26. Просмотров 886. Ответов 6
Метки нет (Все метки)

Пишу на Cocos2d, пытаюсь прикрепить рекламный модуль iAd. Для этого как я понял какие-то опрерации нужно произвести на событии viewDidLoad. Но оно не происходит (NSLog не выводит сообщение). Что я упустил?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2012, 18:26     Не происходит viewdidload
Посмотрите здесь:

-viewDidLoad & iOS4 - Objective-C
Добрый день! Есть две проблемы с вызовом -viewDidLoad. Во-​первых, при работе с собственным UIViewController классом, -viewDidLoad не...

Как происходит происходит простейший вывод сообщения в консоль в MASM - Assembler
Простите за нубство. Начал читать книгу Калашникова и там в первейшей программе такой код: CSEG segment org 100h Begin: ...

Запуск Excel из Access происходит строго периодически - через раз происходит сбой - MS Access
запуск Excell из Access происходит строго периодически - через раз. происходит сбой. После сбоя прложение выполняется нормально, затем...

В какой части матрицы происходит накопление суммы. обьясните, что и как происходит, пожалуйста - Pascal ABC
Uses crt; Var a: Array of Real; i,j,n,k: Integer; s: Real; BEGIN Randomize; Writeln('Введите размер матрицы: ');...

не происходит авторизации - PHP БД
Всем привет. Ситуация такая: после регистрации на странице должна появиться ссылка, локалка- Denvver , в php myadmin есть база данных,...

Не происходит перенаправление - HTML, CSS
Подскажите, почему в данном случае не происходит перенаправление через 2 секунды, хотя во всех мануалах написано что перенаправление...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fakir88
0 / 0 / 0
Регистрация: 18.06.2012
Сообщений: 5
18.06.2012, 22:06     Не происходит viewdidload #2
Если класс в котором ты делаешь является наследником классов cocos2d то событие viewDidLoad там не определено, попробуй код который нужно запихай в viewDidLoad, поставить в метод init
Objective-C
1
2
3
4
5
6
7
8
-(id) init
{
    
    if( (self=[super init])) {
         твой код
}
return self;
}
.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
19.06.2012, 16:02     Не происходит viewdidload #3
Fennec, Вы разберитесь вообще что есть что. Какой viewDidLoad в кокосе. viewDidLoad это callback-метод Cocoa, который как бы говорит контроллеру, что его отображение успешно загрузилось.

Для Вашего случая подойдет вариант создания вашей iAd view непосредственно в классе-делегате вашего приложения в методе applicationDidFinishLaunching:withOptions:, а затем будет производиться добавление этой iAd view на UIWindow. Читайте документацию. Если не разбираться, у Вас возникнут большие проблемы с кокосом. Если только это не приложение типа copy-paste из туториалов.
fakir88
0 / 0 / 0
Регистрация: 18.06.2012
Сообщений: 5
19.06.2012, 19:49     Не происходит viewdidload #4
zulkis А с инитом не прокатит? Очень интересно, потому как с кокосом знаком мало(( точнее пока мало))
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
20.06.2012, 05:52     Не происходит viewdidload #5
А Вы попробуйте, потом расскажете сообществу, что у Вас получилось.
Fennec
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 36
20.06.2012, 10:38  [ТС]     Не происходит viewdidload #6
Да я разбираюсь потихоньку. Как раз вот давеча разместил добавление iAd непосредственно в AppDelegate, прокатило. Я так понимаю, что если с рекламной вьюхой понадобится взамидествовать извне понадобится выносить ее в качестве статической переменной.

Кстати, попутно о статических переменных. Поскольку я перешел на Obj-C с AS3 позволю себе привести пример на "родном" языке.

Я так понимаю, что в Obj-C статические переменные это как и в AS3 переменные которые пирнадлежат непосредственно классу а не его экземпляру, по сему нужную переменную мы можем вызвать из любого места кода, например MouseEvent.CLICK. При том, способ задания такой переменной ограничивается одной строчкой кода, к примеру public static var anyProperty. Из прочитанных мной статей Obj-C в этом плане простотой не блещет, и для задания такого рода переменной предлагают составлять отдельный класс-синглтон. Неужели нет более простого способа?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2012, 22:37     Не происходит viewdidload
Еще ссылки по теме:

Не происходит объединение? - C++
#include "stdafx.h" #include <iostream> #include "conio.h" using namespace std; #define HIBYTE(l) ((l & 0xffff) >> 8) ...

Происходит зацикливание! - Pascal
var k,n:integer; xn,s:longint; begin readln(n); xn:=1; s:=0; k:=1; while k<=n do begin xn:=xn*k;

Не происходит запись в БД - PHP БД
Есть веб-страница с формами ввода. Данные (введенные) отправляются на страницу-обработчик, которая считывает их и добавляет переменные....

.NET 4.x Не происходит запись в БД - C#
Добрый день. Прошу помощи с первым проектом. Проблема с записью в базу. В приложеном проекте, при нажатии кнопки ок, не проиходит запись в...


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

Или воспользуйтесь поиском по форуму:
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
20.06.2012, 22:37     Не происходит viewdidload #7
Скажем так напрямую objC не поддерживает переменные класса. Но вы можете сэмулировать это поведение создав статическую переменную и сделав сеттер\геттер для неё.

Like that:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
// TheClass.h
@interface TheClass : NSObject
+ (int)count;
@end
 
// TheClass.m
static int theCount = 0;
 
@implementation TheClass
+ (int) count { return theCount; }
@end
Yandex
Объявления
20.06.2012, 22:37     Не происходит viewdidload
Ответ Создать тему
Опции темы

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