Сэтгэх чадварын олимпиад 2013-хавар

Манай хамт олон

*** IDaalt club| Хамтдаа хүчтэй ***

Сэтгэх чадварын олимпиад 2013-хавар

ШУТИС-н бүх салбар сургуулиудын дунд сэтгэх чадварын олимпиад зохион байгуулсан билээ.

*** IDaalt club| Хамтдаа хүчтэй ***

Saturday, November 9, 2013

iOS хөгжүүлэлтийн хичээл #5

Энэ 7 хоногийн хичээлээр та бүхэндээ өгөгдлийн сантай ажиллах талаар заана.

iPhone хөгжүүлэлтэнд өгөгдлийн сантай ажиллах нь бусад програмчлалын хэлнээс илүү хялбар. Өөрийнх нь CoreData гэдэг framework-ийн тусламжтайгаар хэрхэн шийдэхийг энэ хичээлээрээ орууллаа. Мөн динамик хуудастай жижиг аппликэшн хавсаргав.





Эхлээд уламжлал ёсоор төслөө үүсгэнэ. xCode --> New project гээд  empty project гэдгийг сонгоно.


use core data-г чагтлах хэрэгтэй (ингэж хийвэл их амар).



Бид coredata.framework-ийг ашиглана. Зүүн дээд хэсэгт байгаа төслийн нэр дээрээ дарж байгаад General ->  Linked frameworks and libraries хэсэгт өөрийн ашиглах framework library-г ашиг + тэмдэг дарснаар оруулна.


Зурагт харагдаж байгаачлан frameworks хэсэгт орсон байна. Зүүн хэсэгт байгаа төслийнНэр.xcdatamodelid нь өгөгдлийн загварчлал хийх GUI юм. 


төслийнНэр.xcdatamodelid энд дарснаар иймэрхүү GUI харагдана. Add entity гэдгийг дарснаар өөрийн column үүсгэх юм. Тэгээд attribute-ийг параметрийн төрөлтэй хамт оруулна.


Харагдах interface-ийг сольход editor style сегментээр сольж харах боломжтой.

Entity гээ оруулж дуусаад төслийнНэр.xcdatamodelid дээр mouse2 дараад new file... --> Core data гэдгээс (зүүн хэсэгт байгаа iOS хэсгийн Core data) сонгоод дараах байдлаар class аа үүсгэнэ.


databaseTest -ээр entity жагсаалтууд гарж ирнэ.


Бүгдий нь чагтлаад Next...

Үүссэн классд ингэж орж ирнэ. Aнхнаасаа use coredata чагталсан бол автоматаар Appdelegate классд холбогдож кодууд орно.


Appdelegate.m

Энэ автоматаар төслийн нэртэй sqlite файл үүсгээд тэндээ утгаа хадгалдаг.




1. Өөрийн класстайгаа холбох...

Өөрийн ажиллах гэж байгаа ViewController .h-д 

@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;

ViewController-ийн .m файлд нь  дараах кодыг бичнэ. Appdelegate нь үндсэн холбож байгаа класс. Apple.h нь entity-с үүссэн class.
@property гэж зарласан бол @synthesize гэж холбож өгөх шаардлагатай. 
[self addEntity] нь дараагийн утга оруулах функц юм.
за ингээд холболоо.

2. column даа өгөгдөл оруулах


иймэрхүү байдлаар оруулна. product_id нь NSNumber гэж зарласан учир заавар NSNumber-ийг агуулах ёстой. 

3. Оруулсан утгаа харах.


Иймэрхүү байдлаар утгуудаа авах юм.

Өгөгдлийн сантай холбогдох динамик аппликэшн


Screenshots:

Home View Controller

Detail View Controller

Enjoy learning guys!



Sunday, November 3, 2013

iOS хөгжүүлэлтийн хичээл #4

Энэ 7 хоногийн хичээлээр Orientation үзэх байсан ч хэд хэдэн шалтгааны улмаас хэд хэдэн зураг сонгоод зөөдөгөөр хийж орууллаа.

     Эхнийх нь 3 ширхэг UIImageView оруулаад чирхэд таарсан зурагийг хурууны өндөгөөр зөөдөгөөр хийв. Дараагийнх нь эхэлж дарагдсан зурагийг дарж дуусхад анимэшнтэй гүйдэгээр хийв. 

1. Зөөгддөг imageview

Эхний ээлжинд прожект оо үүсгээд эхэлж харуулах viewcontroller оо заасны дараагаар тэр классдаа зурагаа өөр өөр функц дээр ашиглахын тулд глобалаар зарлаж өгсөн. Би глобал хувьсагчууддаа доогуур зураас нэмж бичдэг, ингэж бичих нь хооронд нь ялгахад дөхөмтэй ;)

Дараагийн удаад эдгээр хувьсагчуудаа шаардагдах утгуудыг бичиж өгнө. viewcontroller дуудхад хамгийн түрүүнд дуудагддсаг функц бол -(void)viewDidLoad юм. Энэ функцдээ параметрүүдийг тодорхойлов. Эхлээд зурагаа оруулах хэрэгтэй.


ингээд чирж оруулна. xcode нь төсөл үүсгэхдээ хавтас үүсгээд тэндээ бүх файл код нтрээ багтаадаг. Тиймээс зурагнуудаа тухайн хавтсандаа хуулах нь зөв юм. Тэгхийн тулд хамгийн дээр байгаа copy гэснийг нь чагтлах хэрэгтэй.


Код нь иймэрхүү байна. imageview-н тухайн эхлээд frame буюу хэмжээ орох байршилийг зааж байна, дараагийнх нь image буюу зурагийг оруулж байна. userInteractiveEnabled буюу touch event авах эсэхийг заасны дараагаар өөрийн классын харагдацдаа оруулж байна.

touchesMoved гэдэг функц нь өөрийнх нь touch event авдаг функц юм. touchLocation ашиглаж хэрэглэгчийн дарсан хэсгийг авна. дарагдсан хэсгээ танихийн тулд баахан нөхцөл шалгасан.



2. Анимэшнтэй хөдөлдөг imageview

Анимэшн оруулж өгхийн тулд эхлээд сонгогдсон зурагийг тогтоогоод дарж дууссан үед сүүлд дарагдсан хэсэг рүү шилжүүлэе. Эхэлж дарсан зурагийг мэдхийн тулд дарсан зурагаа индексжүүлье. 


int утгатай хувьсагчийг глобалаар зарлалаа.

.m классдаа функцүүдээ доор харагдаж байгаагаар бичив.

 touchesBegan функцээр дамжуулж дарагдсан зурагийг тогтоов.


touchesEnded функцэд дарж дуусхад дарагдсан зурагийн индекээс 0.5 секундийн интервалаар шилжихээр тохируулав.



enjoy coding!