Using Java SPI mechanism, You can intergrate your custom view
/LayoutParams
properties into Uinspector. Such as Uinspecor-Fresco / Uinspector-Lottie.
-
Create a class implements the
ViewPropertiesParserService
package com.your.pack import com.huya.mobile.uinspector.impl.properties.view.ViewPropertiesParser import com.huya.mobile.uinspector.impl.properties.view.ViewPropertiesParserService class YourService : ViewPropertiesParserService { override fun tryCreate(v: View): ViewPropertiesParser<out View>? { if (v is YourCustomView) { return YourCustomViewParser(v) } //Just return null if you don't want to handle this view return null } }
-
Create a class extends the
ViewPropertiesParser
import android.view.View import com.huya.mobile.uinspector.impl.properties.view.ViewPropertiesParser import com.yy.mobile.whisper.Output class YourCustomViewParser(view: YourCustomView) : ViewPropertiesParser<YourCustomView>(view) { override fun parse(@Output props: MutableMap<String, Any?>) { super.parse(props) props["key"] = value } }
-
Create a file named
com.huya.mobile.uinspector.impl.properties.view.ViewPropertiesParserService
in the directorysrc/main/resources/META-INF/services
. Write down your service class nameYourService
in the file. -
OK! Now run your app and click the
YourCustomView
on screen.