Я использую React Native 0.29 с Android-эмулятором (API-уровень 23). Я пытаюсь letterSpacing
компонент letterSpacing
on Text
. Но, похоже, он не работает на Android. Официальная документация говорит, что она работает только в iOS. Существует ли какое-либо обходное решение этой проблемы?
Интервал между письмами на React Native - Android
Ответ 1
Отсутствие разметки букв на Android можно "решить", добавив одно или несколько пробелов между каждым символом. Я нашел unicode HAIR_SPACE U+200A
чтобы дать наилучшие результаты, но вам, возможно, придется поэкспериментировать, чтобы найти то, что лучше подходит для вашего шрифта. Например, 2 пространства для волос или одно U+2009 THIN SPACE
.
function applyLetterSpacing(string, count = 1) { return string.split('').join('\u200A'.repeat(count)); }
Это, вероятно, лучше всего подходит для заголовков и надписей меню.
Юникодные пространства: https://www.cs.tut.fi/~jkorpela/chars/spaces.html
Ответ 2
Похоже на React Native 0.30 letterSpacing - это только iOS. Вы всегда можете добавить это и выдать запрос на перенос :)
Другим вариантом может быть взломать функцию, которая принимает строку и добавляет расстояние вокруг каждой буквы. (это был бы взлом, хотя!)
Ответ 3
Обновите React Native до версии не ниже 0.55, чтобы интервал между буквами на Android работал.