轉(zhuǎn)載請(qǐng)注明出處
作者:developerHaoz
Github 地址:developerHaoz
本文為 手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day one ,如果想看該系列的其他文章,請(qǐng)點(diǎn)擊以下連接
手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day one
手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day two
手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day three
手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day four
手把手教你從零開(kāi)始做一個(gè)好看的 APP - Day five
在開(kāi)始寫(xiě)正文之前,先來(lái)一波效果的展示,看看五天過(guò)后我們能實(shí)現(xiàn)怎樣的效果
本次的教程分為 5 天,內(nèi)容分別為:
Day one,準(zhǔn)備
功能需求
可行性分析
Day two,UI 及公共類的封裝
界面的設(shè)計(jì)及實(shí)現(xiàn)
公共類的實(shí)現(xiàn)
Day three,日記模塊
日記的展示
懸浮菜單的實(shí)現(xiàn)
日記增刪改的實(shí)現(xiàn)
Day four,妹子模塊
圖片的獲取
圖片的展示
詳情頁(yè)面的展示
Day five,段子模塊
段子數(shù)據(jù)的獲取
段子的顯示
Day one
俗話說(shuō),萬(wàn)事開(kāi)頭難,在開(kāi)始敲代碼之前,先讓我們來(lái)做一些必要的準(zhǔn)備,這樣才能事半功倍嘛!
一、功能需求
既然要做一個(gè) APP,那我們首先還是得把 APP 的功能都列出來(lái),有了方向才能更好的努力,因?yàn)槲蚁胱龅氖且粋€(gè)專門(mén)給睡覺(jué)前用的 APP,所以我覺(jué)得應(yīng)該有以下的這些功能
- 1、日記的增刪改
- 2、顯示一些有趣好玩的段子
- 3、瀑布流展示漂亮的妹子
- 4、保存日記的內(nèi)容以及緩存妹子圖片
雖然說(shuō)需求不多,但是卻要運(yùn)用到網(wǎng)絡(luò)、數(shù)據(jù)存儲(chǔ)、圖片緩存、UI 設(shè)計(jì)等內(nèi)容,相信整個(gè) APP 完成下來(lái),必定能鞏固我們的 Android 基礎(chǔ)。
二、可行性分析
我們這個(gè) APP 主要有三個(gè)模塊,日記模塊主要是運(yùn)用到了數(shù)據(jù)庫(kù)的知識(shí),難度不大。但是,段子模塊和妹子模塊的數(shù)據(jù)要從哪來(lái),這便是要好好考慮的了。幸好現(xiàn)在是個(gè)開(kāi)源的時(shí)代,很多的數(shù)據(jù),網(wǎng)上已經(jīng)開(kāi)源出來(lái)了。
我們先來(lái)看一下數(shù)據(jù)的內(nèi)容
group: {
text: "教授在河邊,常常看到兩只龜,縮著一動(dòng)不動(dòng)。有天忍不住好奇,問(wèn)一農(nóng)
民:這兩只烏龜在干嗎?農(nóng)民說(shuō):他們?cè)趐k。教授不解地問(wèn):動(dòng)都沒(méi)動(dòng)過(guò)p什么
k。老農(nóng)說(shuō):他們?cè)诒日l(shuí)壽命長(zhǎng)。教授說(shuō):可是殼上有甲骨文的那只,早就死了埃
這時(shí),另一只猛然探出頭來(lái)罵到:md,死了也不吭一聲!有甲骨文的那只也伸
出頭來(lái):“專家說(shuō)啥你信啥1",
user: {
user_id: 4669064575,
name: "饅頭啊",
avatar_url: "http://p3.pstatp.com/medium/6237/7969345239",
},
content: "教授在河邊,常常看到兩只龜,縮著一動(dòng)不動(dòng)。有天忍不住好奇,問(wèn)
一農(nóng)民:這兩只烏龜在干嗎?農(nóng)民說(shuō):他們?cè)趐k。教授不解地問(wèn):動(dòng)都沒(méi)動(dòng)過(guò)
p什么k。老農(nóng)說(shuō):他們?cè)诒日l(shuí)壽命長(zhǎng)。教授說(shuō):可是殼上有甲骨文的那只,早
就死了埃這時(shí),另一只猛然探出頭來(lái)罵到:md,死了也不吭一聲!有甲骨文
的那只也伸出頭來(lái):“專家說(shuō)啥你信啥1",
...
}
{
id: "56cc6d1d421aa95caa7076df",
type: "福利",
url: "http://ww1.sinaimg.cn/large/7a8aed7bgw1esxxi1vbq0j20qo0hstcu.jpg",
used: true,
who: "張涵宇"
}
上面那兩段代碼分別是段子和妹子模塊的 json 類型的數(shù)據(jù),我已經(jīng)將一些沒(méi)用的字段去掉了。剩下的都是我們想要的數(shù)據(jù)。可以看到段子數(shù)據(jù)中,有著段子的內(nèi)容,以及發(fā)布者的頭像和名字。而妹子數(shù)據(jù)中有著圖片的 url、id、以及圖片的類型。相信有了這么豐富的數(shù)據(jù),我們想要完成這個(gè) APP 也是有底氣了。