
[Kurs] Objective C/Cocoa - 03. Obiekty. Składnia. Typy zmiennych.
#51
Napisano 26 stycznia 2009 - 18:25
#52
Napisano 25 marca 2009 - 10:26
#53
Napisano 25 marca 2009 - 11:29
#54
Napisano 09 lipca 2009 - 00:14

Po pierwsze nie kumam tych setter'ów i getter'ów ( chciałoby się powiedzieć set'rów i get'rów

Do końca nie kumam też tego:
-(typ jaki zwraca metody) metoda; -(typ jaki zwraca metody) metoda: (typ argumentu) argument; -(typ jaki zwraca metody) metoda: (typ argumentu) argument iDrugiAgrument:(typ drugiego argumentu) drugiArgument;
Niby logiczne, ale nie do końca. Czemu to pierwsze może być bez (typ argumentu) argument, skoro potem piszemy, że to można pominąć ?? Jaka jest racja bytu tego czegoś. Co do trzeciego, to na początku pomyślałem, że to jest wypisywanie zmiennych jakie zwraca metoda, a tu bach chwilę potem jakieś set'ry i get'ry ;P.
Wcześnie programowałem w Javie ( z tych wysokopoziomowych ) i przyznam, że mam w głowie teraz niezły burdel. Java w porównaniu do tego Obj - C, to bajka. Prostszy - zwłaszcza na początek i to bardzo, brak problemu z jakąś pamięciom i w ogóle. Poza tym te całe mnóstwo zbędnych znaczków ( -,+,@ itd. ), to strasznie upierdliwa sprawa. Trzeba wkuwać co do czego i w ogóle

A i jeszcze jedno - na drugi raz, zróbcie jeden temat z kursem, jeden z komentarzami oraz poprawiajcie kurs. Same błędy językowe irytują, gdy człowiek stara się skumać o co chodzi, a to kupy się nie trzyma

Edit: I jeszcze coś - próbuję rozgryźć to interface i implementation. Może mi ktoś powiedzieć, po co są tu i tu metody do tych samych zmiennych i po co się przypisuje np. w do wiek ?? Przecież to sensu nie ma. No chyba, że coś mamy w zmiennej w i chcemy to przypisać zmiennej wiek...
Edit2: Po co ,,powtarzamy" ten fragment kodu:
-(NSString *) nazwisko; -(int) wiek;??
#55
Napisano 09 lipca 2009 - 00:44

#56
Napisano 09 lipca 2009 - 02:29




#57
Napisano 09 lipca 2009 - 09:17
#58
Napisano 09 lipca 2009 - 10:10

#59
Napisano 09 lipca 2009 - 13:22

A co do tego Bean'a - co w nim rewelacyjnego ?? Albo inaczej - co on ma, czego nie ma XCode ?? Zgadując, to z twojego zdania, a właściwie słowa, nie wynika, że to jest program ( mówisz w liczbie mnogiej ), więc jest to pewnie coś innego i w tym miejscu przyznaje się, nie szukałem za dużo ( bo mi się nie chce xD ) i nic nie znalazłem na ten temat

Ogólnie to pewnie i tak jest to teraz mało ważne, bo na razie to muszę opanować podstawy. Sukcesem będzie, jeśli dziś uda mi się ten kalkulator napisać

Edit: Natknąłem się na błąd, gdzie wyrzuca mi słówko token - co to takiego ?? Wiem, co to jest, jeżeli chodzi o transakcje w banku, ale z programowaniem, to mi się to z niczym nie kojarzy.
---- Dodano 09-07-2009 o godzinie 23:04 ----
Sorka, że was męcze, wiem, że nie powinienem, ale nie mogę się nigdzie tego doszukać.
I w tym kursie i w wielu innych są używane znaki typu %s, %d itp. O ile wiem co robi ( mniej więcej ) %@, to cała reszta jest niewiadomą. Czy jest gdzieś spis tego, co to robi itp. ??
#60
Napisano 10 lipca 2009 - 00:10
---- Dodano 09-07-2009 o godzinie 23:04 ----
Sorka, że was męcze, wiem, że nie powinienem, ale nie mogę się nigdzie tego doszukać.
I w tym kursie i w wielu innych są używane znaki typu %s, %d itp. O ile wiem co robi ( mniej więcej ) %@, to cała reszta jest niewiadomą. Czy jest gdzieś spis tego, co to robi itp. ??
String Programming Guide for Cocoa: String Format Specifiers
#61
Napisano 10 lipca 2009 - 07:53

---- Dodano 10-07-2009 o godzinie 22:08 ----
To trochę bez sensu, żebym się o wszystko pytał, bo nikt mnie raczej nie chce niańczyć, ale z drugiej strony, to nie mam pomysłu, jak to inaczej rozwiązać. Jeśli kogoś to pociesza, to ,,przeorałem" dokumentacje, dwa przykłady od Apple i Java examples (example source code) Organized by topic © i gucio :/. Problem jest taki:
mam coś takiego:
@interface Kalkulator : UIView {
@interface Kalkulator : UIView {
IBOutlet UIButton *dodaj;
IBOutlet UIButton *dziel;
IBOutlet UIButton *mnoz;
IBOutlet UIButton *odejmij;
IBOutlet UITextField *textField;
IBOutlet UIButton *wynik;
int liczba1, liczba2;
NSString * znak, *checkButton;
}
- (IBAction)dzialanie;
- (IBAction)wynik;
@end
i teraz w pliku .m w "- (IBAction)dzialanie {}" chce wstawić warunek, w którym będzie rozpoznawanie, jaki klawisz został wciśnięty ( do prawie wszystkich klawiszy przypisałem tą samą metodę ). O ile wiem, jak zrobić prostego if'a, to nie wiem, jak sprawdzić, jaką nazwę ma wciśnięty właśnie klawisz :/.
Co do polskich znaków - mi to glanc... Dlatego mam polsko/angielski program. Jak komuś oddaję gotowy, to w tedy zmieniam na angielskie, żeby się ludzie nie czepiali

Jeśli macie jakieś propozycję, jak się obyć bez czyjejś pomocy, to BIG plz, napiszcie. Z java'ą miałem łatwiej, bo jest dużo przykładów na Java examples (example source code) Organized by topic i język jest popularny, to i dużo tematów na różniastych forach z nim związanych, można znaleźć.
PS. Nie obrażę się, jeśli nikt nie odpowie

#62
Napisano 11 lipca 2009 - 08:16
polecam tutorial kalkulatora MEGAUPLOAD - The leading online storage and file delivery service ew. polukaj sobie na
iPhoneDevCentral.org , http://gnustep.made-...objc/index.html , Cocoa Dev Central i wiele innych tutoriali dla poczatkujacych

#63
Napisano 26 lipca 2009 - 19:16

Dzięki za radę i linki. Co do currentTitle - teraz wiem, jak się do tego odnieść. Widziałem to w api, a nie wiedziałem, jak użyć w kodzie

if ([dodaj.currentTitle.isEquals:@"+"]){}. O ile jest to bezsens, jeżeli nie zmienia się nazwa przycisku, o tyle nie łapie czemu wyskakuje błąd. Próbowałem też ze znakiem =, a z == (
if( dodaj.currentTitle==@"+" ){}) kompiluje się i owszem, ale nic się nie dzieję, jak klikam na jakiś guzik :/.
Co do przykładu - dzięki. Przyda się, aczkolwiek, jest on za bardzo zaawansowany dla mnie. Przyda się potem

No dobra, koniec gadania, idę dalej próbować, aż odgadnę, jak to się robi, a potem stwierdzę - a to takie proste przecież

#64
Napisano 26 lipca 2009 - 21:22


#65
Napisano 26 lipca 2009 - 22:49
if (e.getSource().equals(gra) {}gdzie gra to nazwa przycisku. Niestety ( a może na szczęście ) w Obj-C tak nie jest, a przynajmniej mi się nie udało takiego efektu uzyskać. Z tąd właśnie było moje pytanie

if(mojGuzik.state){}i tak z każdy, kolejnym guzikiem


PS. Czy jest jakaś opcja w XCode do automatycznego porządkowania kodu ??
#66
Napisano 26 lipca 2009 - 22:55




#67
Napisano 26 lipca 2009 - 23:09
#68
Napisano 28 lipca 2009 - 10:24
#ifndef APPCONTROLLER_H
#define APPCONTROLLER_H
#import
#import
#import
#define add 0
#define dziel1 1
#define mnoz1 2
#define odejmij1 3
@interface Kalkulator : UIView {
IBOutlet UIButton *dodaj;
IBOutlet UIButton *dziel;
IBOutlet UIButton *mnoz;
IBOutlet UIButton *odejmij;
IBOutlet UITextField *textField;
IBOutlet UIButton *wynik;
int liczba1, liczba2;
}
- (IBAction)dzialanie:(id)sender;
- (IBAction)wynik:(id)sender;
@end
#endif
#import "Kalkulator.h"
@implementation Kalkulator
- (IBAction)dzialanie:(id)sender {
liczba1=[sender tag];
switch (liczba1) {
case add:
textField.text = @"22";
break;
default:
break;
}
if([[sender title] isEqualToString:@"+"]){
textField.text = @"22";
}
}
- (IBAction)wynik:(id)sender{
}
@end
No i że tak powiem dupa blada, bo wywala mi, że nie ma Coca w bibliotece. Ok wywalę tą linijkę, skompiluje się, uruchomi, ale zawiesi przy naciśnięciu jakiegoś przycisku. Dlaczego ??
@giku:
Ok, muszę przyznać, że jak patrzę na to - Adding button and its handler in Objective-C using iPhone SDK n o t e 1 9 . c o m, to widzę pewne podobieństwo, ale nie czaje nadal:
- @property (nonatomic, retain) UILabel *mylabel; ... - co to ??
- @synthesize mylabel; ... - co to ??
Przypuszczam, że któreś z nich to ten delegat, ale nie wiem który. Odwołania do konkretnego przycisku, to chyba tak jak napisałem, aczkolwiek, duże jest prawdopodobieństwo, że się mylę

PS. Robię aplikację na iPhona - chyba ma to jakieś znaczenie, dlatego piszę

#69
Napisano 28 lipca 2009 - 10:28
#70
Napisano 28 lipca 2009 - 11:57

#71
Napisano 28 lipca 2009 - 13:19
#72
Napisano 28 lipca 2009 - 14:49
#73
Napisano 28 lipca 2009 - 15:13
#74
Napisano 28 lipca 2009 - 16:17

#75
Napisano 28 lipca 2009 - 16:23
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych