exports.matrixOnComplete = functions.testLab.testMatrix().onComplete(testMatrix => { const matrixId = testMatrix.testMatrixId; switch (testMatrix.state) { case 'FINISHED': // Test finished with results // Check testMatrix.outcomeSummary for pass/fail break; case 'ERROR': // Test completed with an infrastructure error break; // check other possible status codes... } return null; });
TextViews
TextAppearance
styles.xml
<style name="MyTextAppearance" parent="TextAppearance.AppCompat"> <item name="android:hyphenationFrequency">normal</item> </style>
TextView
<TextView android:hyphenationFrequency="normal" />
textView.hyphenationFrequency = Layout.HYPHENATION_FREQUENCY_NORMAL
Button
Typeface
Typeface.CustomFallbackBuilder
button.typeface = Typeface.CustomFallbackBuilder( // add the Latin font FontFamily.Builder( Font.Builder(assets, "lato.ttf").build() ).build() ).addCustomFallback( // add the icon font FontFamily.Builder( Font.Builder(assets, "icon_font.ttf").build() ).build() ).build()
setSystemFallback()
Typeface.CustomFallbackBuilder( FontFamily.Builder( ... ).build() ).setSystemFallback("sans-serif") .build()
fontVariationSettings
<style name="MyTextAppearance" parent="TextAppearance.AppCompat"> <item name="android:fontVariationSettings">...</item> </style>
AppCompatTextView
<TextView ... app:fontVariationSettings="..." />
TextAppearanceSpan
typeface
fontFeatureSettings
LineBackgroundSpan
LineHeightSpan
LineBackgroundSpan.Standard
LineHeightSpan.Standard
FontMatcher
// font = NotoSansCJK-Regular.ttc // length = 2 auto[font, length] = AFontMatcher_match("たすく a.k.a. のな"); // font = Roboto-Regular.ttf // length = 8 auto[font, length] = AFontMatcher_match(" a.k.a. のな"); // font = NotoSansCJK-Regular.ttc // length = 2 auto[font, length] = AFontMatcher_match("のな");
nullptr
SystemFonts.getAvailableFonts
ASystemFontIterator