Flutter設置按鈕disable

一、說明

其實如果只是要讓按鈕不響應事件,有很多種方法:你可以用變量控制你的邏輯;可以設置 onPressed 爲 null;可以用AbsorbPointer 禁用事件......

我的場景是要給按鈕設置 disabledColor,在 button 爲 enable 時一種顏色,爲 disable 時又是另外一個顏色,但是設置完 disabledColor 後,怎樣設置 disable 呢,看了一下按鈕的所有屬性,也沒有 enable 相關的設置啊,我去,這不合理吧 !

二、解決

我們看一下 disableColor 屬性的說明:

你妹啊!原來你的 enable 判斷是用 onPressed 是否爲 null 進行判斷的!不禁感嘆:縱橫江湖幾十載,第一次見這種判斷方法,就不能常規點,加一個屬性嗎 ?

現在知道了它的實現原理,你也應該知道怎樣設置 disable 了:

只需要給 onPressed 置爲 null 就可以了。

 

搞定!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章