Windows 的 telnet巧骚,可能用了 32 bit 的數(shù)據(jù)類(lèi)型記錄 port,這樣 port 表面上看到是可以超過(guò) 65535劈彪。 tcp header 明確定義了 tc...

Windows 的 telnet巧骚,可能用了 32 bit 的數(shù)據(jù)類(lèi)型記錄 port,這樣 port 表面上看到是可以超過(guò) 65535劈彪。 tcp header 明確定義了 tc...
系列文章Android程序員初探Vue(一):環(huán)境搭建(Vue2.0)Android程序員初探Vue(二):項(xiàng)目結(jié)構(gòu)Android程序員初探Vue(三):從開(kāi)源項(xiàng)目看Vue架...
本文發(fā)于簡(jiǎn)書(shū)——何時(shí)夕,搬運(yùn)轉(zhuǎn)載請(qǐng)注明出處女器,否則將追究版權(quán)責(zé)任住诸。交流qq群:859640274 大家好久不見(jiàn),又有一個(gè)多月沒(méi)有發(fā)文章了丧诺,所以今天發(fā)一篇來(lái)刷刷存在感奄薇。最近 Fl...
Kotlin 系列:Kotlin之美——高效篇Kotlin之美——DSL篇 Kotlin DSL 把 Kotlin 的語(yǔ)法糖演繹得淋漓盡致饵隙,這些語(yǔ)法糖可謂好吃金矛、好看又好玩,但...
初識(shí)低功耗藍(lán)牙 Android 4.3(API Level 18)開(kāi)始引入Bluetooth Low Energy(BLE,低功耗藍(lán)牙)的核心功能并提供了相應(yīng)的 API肩榕, 應(yīng)...
在Android開(kāi)發(fā)中,事件分發(fā)機(jī)制是一塊Android比較重要的知識(shí)體系乔妈,了解并熟悉整套的分發(fā)機(jī)制有助于更好的分析各種點(diǎn)擊滑動(dòng)失效問(wèn)題蝙云,更好去擴(kuò)展控件的事件功能和開(kāi)發(fā)自定義...
網(wǎng)絡(luò)協(xié)議那么多路召,為什么面試喜歡問(wèn)TCP勃刨?原因無(wú)外乎兩個(gè):1、TCP協(xié)議直接與進(jìn)程打交道股淡,寫(xiě)網(wǎng)絡(luò)程序要用身隐;2、TCP協(xié)議設(shè)計(jì)十分精巧贾铝,在一個(gè)不可靠的IP網(wǎng)絡(luò)上實(shí)現(xiàn)了可靠傳輸埠帕,因...
前言 如果你也學(xué)習(xí)Android敛瓷,那么你大概率會(huì)看過(guò)我的文章。經(jīng)常有讀者給我留言:“該怎么學(xué)習(xí)Android俘种?”、“日常學(xué)習(xí)Android的方法是什么”苍姜。 所以悬包,今天,我將獻(xiàn)...
關(guān)于本文前面提出的問(wèn)題棵譬,簡(jiǎn)單回答一下:
Q1:google提出view概念的目的是給android app提供用戶交互的機(jī)制预伺。
Q2、Q3脏嚷、Q7:android framework采用的是層次架構(gòu):從上到下是:Activity、Fragment
View
Drawable
上層知道下層瞒御,下層卻不知道上層父叙。上層可以直接使用支配下層,下層卻無(wú)法支配使用上層肴裙,下層與上層的通信主要靠回調(diào)趾唱。所以View處于Activity、Fragment與Drawable中間蜻懦,意味著View不能夠感知Activity的生命周期鲸匿,但是View可以完全控制Drawable,控制的手段定義在Drawable中阻肩,凡是Drawable提供的方法带欢,都是View控制Drawable的手段,最典型的烤惊,在本文中也使用了的就是setBounds方法乔煞。正如View無(wú)法感知Activity的聲明周期一樣,Drawable同樣無(wú)法感知View的生命周期渡贾。但是View實(shí)現(xiàn)了Drawable.Callback接口空骚,Drawable可以通過(guò)這個(gè)接口與View通信纺讲。本文中有說(shuō)明
Q4:View的生命周期請(qǐng)見(jiàn)本文View-Method-For-Override一圖,這張圖來(lái)自google官方文檔囤屹,如果看不懂熬甚,可以查看文檔獲得相關(guān)說(shuō)明,如果還是看不懂肋坚,歡迎留言討論乡括。
Q5:Activity進(jìn)入stop狀態(tài)后,它的窗口會(huì)被最新呈現(xiàn)的窗口擋住智厌,窗口中的view也因此無(wú)法被我們看見(jiàn)诲泌,如果此時(shí)在后臺(tái)線程中更新一個(gè)view是可以的,前提是要提交到UI線程中铣鹏,但通常意義不大敷扫,因?yàn)榇藭r(shí)用戶無(wú)法看到view的改變,而且诚卸,當(dāng)這個(gè)Activity從stop狀態(tài)中進(jìn)入resume時(shí)呻澜,一般都會(huì)重新更新view,以便繼續(xù)與用戶交互惨险,所以,在stop狀態(tài)下對(duì)view的更新沒(méi)有什么意義脊髓。
Q6:View直接是可以重疊辫愉,重疊區(qū)域的點(diǎn)擊事件由誰(shuí)處理取決于它們的parent 在dispatch這個(gè)點(diǎn)擊事件時(shí),先dispatch給誰(shuí)将硝。能不能都處理呢恭朗?一般情況下是不可以的,但是在最新的CoordinateLayout中依疼,可以通過(guò)behavior實(shí)現(xiàn)這一需求痰腮。具體內(nèi)容太多,請(qǐng)自行搜索律罢。
Q8:View利用這些空間的方法很簡(jiǎn)單啊膀值,就是在onSizeChanged方法中在新的寬高下繪制自己 。新的寬高由其parent ViewGroup在其他子View被移除后误辑,重新layout時(shí)確定沧踏。本文的案例中就利用了這個(gè)方法。
可以看到巾钉,本文前面提出的問(wèn)題翘狱,大部分都可以在本文中直接找到答案,沒(méi)有直接答案的砰苍,也給出了思路和線索潦匈,幫助大家去自行查找答案阱高。比如,關(guān)于View的重疊情況下茬缩,事件處理赤惊,本文已經(jīng)說(shuō)明,請(qǐng)查看本人另一篇事件分發(fā)的文章:“可能是講解View事件分發(fā)最好的文章”寒屯。
工程師milter 評(píng)論自教你步步為營(yíng)掌握自定義View
前言 動(dòng)畫(huà)的使用 是 Android 開(kāi)發(fā)中常用的知識(shí)荐捻,其中,補(bǔ)間動(dòng)畫(huà)重中之重 本文將獻(xiàn)上一份Android動(dòng)畫(huà)簡(jiǎn)介寡夹,包括動(dòng)畫(huà)的種類(lèi)处面、使用、原理等菩掏,讓你全面了解Android...
本文首發(fā)于簡(jiǎn)書(shū)魂角,搬運(yùn)轉(zhuǎn)載請(qǐng)注明出處,否則將追究版權(quán)責(zé)任智绸。微信交流:a1018998632 GitHub地址 大家好野揪,新的一年又正式開(kāi)始了,筆者在這里給大家拜個(gè)晚年瞧栗。最近寫(xiě)的文...
原文地址: http://www.reibang.com/p/4188476f1a1d 有人問(wèn)我如何做好架構(gòu)設(shè)計(jì)挣惰?怎樣靈活運(yùn)用設(shè)計(jì)模式?我的回答是殴边,你做不好這些只是因?yàn)槟銢](méi)...
前言 PopupWindow可以說(shuō)是Google坑最多的一個(gè)控件憎茂,使用PopupWindow的時(shí)候沒(méi)有遇到幾個(gè)坑你都不好意思說(shuō)你用過(guò)它,說(shuō)一個(gè)可能大多數(shù)人都遇到過(guò)的一個(gè)坑:那...