[心得] 开发了一个月的 iOS 小作品

楼主: Linux (Windows)   2015-07-06 00:34:43
Hi (),
这次终于不是来问问题了 >"<a
从开始接触 iOS Object-C 到现在应该一个月又多几天了XD
从一开始的 Object-C 完全没摸过,所以到现在才有点小进度
(心中有点开心的小悸动XD
一切都要归功于板上大大们热情的帮我回答问题,以及 Google 大神!
废话不多说,先看影片!
Demo 小短片:
https://www.youtube.com/watch?v=HTgfTjmS2UI
GitHub Readme:
https://github.com/comdan66/catmap_ios
后端 GitHub:
https://github.com/comdan66/catmap_php
配合的网站:
http://catmap.ioa.tw/maps
稍微说明一下,这就只是个到处模仿的小作品,我利用了 TableView
再经由客制化的 TableViewCell 去做出类似 Instagram、Facebook 的动态讯息页
然后再利用 ImagePickerController 去做开启相机、读取相簿的功能~
并且利用 CLLocationManagerDelegate 来取得座标以及位置资讯!
接着找到了 REMarkerClusterer 这资源,让我做到跟 Instagram 地图很像似的功能
我将它稍微改造了一下,让他可以加载图片XD
至于呼叫 API 原本是使用自己写的 http 函式库,
但是有发现 AFNetworking 也不错用,所以就使用它了!
还有当 Cell 在 Load 图片时,我则是使用 AsyncImageView
来让他可以异步的加载图片!
开发途中,我原本是使用 Main.storyboard 拉版的,但是遇到了很多问题
例如 Cell 虽然可以对 xib(nib) 定义好 identifier 名称,
再用 dequeueReusableCellWithIdentifier 拉出,以免重复的 create 浪费
但是因为我的 Cell 的高度以及内容不同,所以必须定义每种 id 的 identifier
而 xib 的 identifier 却不能动态的决定..
虽然可以定义好 identifier,当 cellForRowAtIndexPath 时在 Update 其内容
但是因为图片是异步加载,所以后会发生另一段故事...(菸
于是,所以,最后我就放弃的使用 storyboard,所以改换成用 code 来写 UI
如此一来,便可以让每个 Cell 搭配好资料的 ID 成为唯一的一个物件!
这样就可以在 cellForRowAtIndexPath 不会重复的 Create!
这是我在 TableView 上的一点点小心得XD
因为以前写过 C语言、Java,虽然没有写过 Object-C,不过我的心得是..
跟 C 好像!但是多了很多有趣的东西!
也幸好写过 Java 的 GUI 接口,让我对于接口的东西有点基础..
(Java GUI 印象是,一直在 set 颜色,add 东西XD
虽然有了这点的小进度,但是还有很多东西我还没摸到 >"<
像是推播通知、iBeacon、iClude、swift.. 等,只能一步步慢慢来了!
我后端、iOS 都放在 GitHub,有兴趣的可以看下!
题外话,因为我是一个后端兼前端的攻城狮XD
所以这作品的前端、后端、API 都是自己来!
不过就是在上个月毅然决然的换跑道二转
目前这算是我的阶段性的作品,但是因为对 iOS 的职场生态不是很熟悉..
想说借由这个小作品跟版上的大大请教,
依照我的 Code 以及状况,是否可以直接找 iOS 工作了?
以及找工作时,是否有哪里需要注意的地方?
以上,如果有兴趣讨论的话,或者我的 Code 可以哪里有更好的地方
或文章内容有不妥或需改进的地方,欢迎各位大大指教 >"<
作者: sinss (星星)   2015-07-06 01:04:00
非常棒ㄟ!
作者: Starflyx (星野)   2015-07-06 01:06:00
同是iOS新手推一个
楼主: Linux (Windows)   2015-07-06 01:09:00
sinss大,感谢XDStarflyx大,一起努力吧!(握
作者: cloudliu (克劳德刘)   2015-07-06 01:11:00
完成度好高,设计也很好看!
楼主: Linux (Windows)   2015-07-06 01:14:00
cloudliu大,感谢XD 帮我跟设计师讲,感谢他的设计XD
作者: neotek   2015-07-06 01:15:00
靠北 吓死我了
楼主: Linux (Windows)   2015-07-06 01:17:00
neotek大,怎么了吗 @@?
作者: neotek   2015-07-06 01:22:00
控制马啊
楼主: Linux (Windows)   2015-07-06 01:24:00
哈哈哈哈,终于发挥效用了XD
作者: yume190   2015-07-06 01:30:00
感觉蛮不错低,只是新文章怎么在最下面是我眼花吗?怎么感觉第一行出现我的ID
作者: jamfly (jamfly)   2015-07-06 08:39:00
请问 jamfly 是? 跟我的id一样 我的
作者: darktt (小朱)   2015-07-06 08:44:00
这个概念与现在公司的一个App非常相似,不过你可以参考看看,它叫做Buddii
作者: howdiun (Howdiun)   2015-07-06 09:31:00
only for taipei QAQ
作者: tentenlee (天天)   2015-07-06 09:37:00
用storyboard的cell动态配置高度变形 可以改用xib试试之前我搞了两天他一直变形.. 最后改xib就正常了..
作者: async (异步)   2015-07-06 10:58:00
请问存挡到后端的资料你架在哪里?
作者: shinrenpan (iOS5)   2015-07-06 12:33:00
为什么不用 QuickTime player 录影 XD
作者: HateDebris (Monster)   2015-07-06 12:36:00
推!
楼主: Linux (Windows)   2015-07-06 15:56:00
回 async 大,我存在 AWS 的 EC2 上面~我用的是 LAMP
作者: tom19830924 (Tom Hsu)   2015-07-06 15:56:00
作者: fishead1116 (DD鱼)   2015-07-06 16:28:00
Run实机也可以用QuickTime Player拍啊
楼主: Linux (Windows)   2015-07-06 19:36:00
回 fishead1116大,真假的?! 我等等来试看看..
作者: KKFN (John)   2015-07-06 21:10:00
我也从零开始,不过摸了快三个月了,现在连个鬼都没做出来..
作者: asshole5566 (爱狮吼伍伍陆陆)   2015-07-06 22:00:00
请问你是?
楼主: Linux (Windows)   2015-07-07 01:58:00
回 KKFN大,你可以先模仿别人家的 App 当练习开始XD
作者: sing10407 (阿U)   2015-07-07 17:56:00
厉害 完成度高 UI也很好看
作者: otaku5566 (オタク56)   2015-07-14 02:26:00
你好厉害>.< 我也摸一段时间摸不出啥鸟,有推荐的书吗仔细想想,看书不如GOOGLE来的快...
作者: wide3751   2015-07-22 08:49:00
学习快速的方式就是找一个实际案例去实作他, 厉害!
作者: ryolue5053 (律:D)   2015-08-07 14:14:00
UI超棒的 同样是新手但输你一大截 推!你超厉害~

Links booklink

Contact Us: admin [ a t ] ucptt.com