IT之家 9 月 16 日消息,Kuikly 是騰訊廣泛應(yīng)用的跨端開發(fā)框架,基于 Kotlin Multiplatform 技術(shù)構(gòu)建,為開發(fā)者提供了技術(shù)棧更統(tǒng)一的跨端開發(fā)體驗(yàn),由騰訊大前端領(lǐng)域 Oteam(公司級(jí))推出。據(jù)騰訊技術(shù)工程官方今日消息,在蘋果最新 iOS 26 系統(tǒng)背景下,Kuikly 新增全新“液態(tài)玻璃”適配。
▲ 圖源:騰訊技術(shù)工程官方公眾號(hào)(后同)
據(jù)介紹,“液態(tài)玻璃”是蘋果繼 iOS 7 的扁平化之后,在 UI 設(shè)計(jì)上的一次重要演進(jìn),它標(biāo)志著 UI 設(shè)計(jì)正從“扁平化”向“沉浸化”過渡,其核心在于對(duì)光學(xué)、材質(zhì)和縱深感的全新探索。
光學(xué)特性與動(dòng)態(tài)流動(dòng)性:“液態(tài)玻璃”能實(shí)時(shí)根據(jù)背景內(nèi)容和環(huán)境光線進(jìn)行“折射”和“反射”,使 UI 元素的顏色和光澤隨上下文動(dòng)態(tài)變化。多層級(jí)界面結(jié)構(gòu): 通過將 UI 分為背景、內(nèi)容和懸浮的互動(dòng)層,創(chuàng)造出顯著的空間感與深度。
騰訊技術(shù)工程官方表示,“液態(tài)玻璃”的出現(xiàn),將“一個(gè)跨端框架,應(yīng)該如何處理與宿主系統(tǒng)之間的關(guān)系”跨端開發(fā)領(lǐng)域中長(zhǎng)期存在的根本性問題重新推回到了聚光燈下,而背后是兩種截然不同的架構(gòu)路線:
自繪渲染(Self-Rendering):追求在所有平臺(tái)上提供像素級(jí)一致的體驗(yàn),通過自帶的渲染引擎在系統(tǒng)畫布上繪制所有 UI,從而實(shí)現(xiàn)最大程度的控制力和跨平臺(tái)一致性。原生渲染(Native-Rendering):致力于將框架的抽象層無縫對(duì)接到原生系統(tǒng)的 UI 組件和渲染管線上,以最大化地利用平臺(tái)特性、保證性能和跟進(jìn)系統(tǒng)級(jí)的創(chuàng)新。
IT之家從騰訊技術(shù)工程獲悉,與以往的風(fēng)格迭代不同,“液態(tài)玻璃”的實(shí)現(xiàn)并非純粹的視覺技巧,而是深度依賴于系統(tǒng)底層的圖形處理能力。UI 效果的實(shí)現(xiàn)方式發(fā)生了根本改變:從軟件層面的“模擬”,轉(zhuǎn)向了對(duì)底層硬件能力的“直接調(diào)用”。Kuikly 選擇原生渲染路線,在適配平臺(tái)級(jí)創(chuàng)新時(shí)則更具天然優(yōu)勢(shì),通過將上層抽象映射為原生 UI 組件來進(jìn)行渲染。
較低的適配成本:無需從零模擬,主要工作在于對(duì)原生 API 的封裝和框架層面的暴露,開發(fā)成本相對(duì)較低。較高的保真度:由于直接使用系統(tǒng)能力,最終呈現(xiàn)的效果在視覺和性能上能與原生應(yīng)用保持一致。可持續(xù)的演進(jìn)能力:框架的設(shè)計(jì)理念決定了它能與宿主系統(tǒng)的創(chuàng)新保持同步。未來的平臺(tái)級(jí)更新,同樣可以通過相似的路徑被快速集成。
▲ Kuikly 原生渲染架構(gòu)圖
Kuikly 已完成對(duì)“液態(tài)玻璃”的首階段適配,并對(duì)外開源發(fā)布。Kuikly 的適配工作并非簡(jiǎn)單的 UI 改造,而是充分利用原生提供的基礎(chǔ)能力,在框架渲染層和 DSL 驅(qū)動(dòng)層兩方面進(jìn)行擴(kuò)展。對(duì)于常用的 View、Button 等組件,為了適配“液態(tài)玻璃”,沒有引入新的獨(dú)立組件,而是為現(xiàn)有組件提供了簡(jiǎn)潔的視圖屬性擴(kuò)展。開發(fā)者只需通過一行 glassEffectIOS () 代碼,即可為任意容器視圖啟用液態(tài)玻璃效果。
針對(duì)不同類型的組件,Kuikly 采取了差異化的適配策略:
基礎(chǔ)組件:對(duì)基礎(chǔ)的容器組件如 View、Button,我們通過原生屬性擴(kuò)展的方式實(shí)現(xiàn)適配。同時(shí),也提供了獨(dú)立的 LiquidGlass 與 LiquidGlassContainer 組件(類似于 BlurView 的用法),滿足更靈活的布局需求。復(fù)雜組合組件:對(duì)于 Input、AlertDialog 等組合型組件,支持通過組合效果,讓業(yè)務(wù)以較低成本按需適配。iOS 特有組件:對(duì) Slider 和 Switch 這類在 iOS 26 上擁有全新動(dòng)態(tài)效果的控件,我們?cè)阡秩緦有略隽?iOS 平臺(tái)專屬的組件進(jìn)行封裝,這確保了這些控件在具備液態(tài)玻璃效果的同時(shí),能夠獲得與原生完全一致的交互體驗(yàn)。在上層 DSL 使用上,我們封裝了平臺(tái)差異,開發(fā)者無需修改原有組件的使用代碼,只需添加 enableGlassEffect (true) 屬性,即可輕松啟用。