Я проголосую за ответ от @ChuckKollars после игры с этим JSFiddle (на Chrome 46.0.2490.86) и ссылаюсь на этот пост (написан на китайском языке).
Основная причина против гипотезы бесконечного вычисления заключается в том, что использование width
сталкивается с той же проблемой бесконечного вычисления .
Посмотрите на этот JSFiddle , дисплей parent
- inline-block
, который может определять маркер / дополнение на нем. child
имеет значение поля 20%
. Если мы следуем бесконечному расчету гипотезы:
child
зависит от parent
parent
зависит от child
. В результате Chrome останавливает вычисление где-то, в результате:
Если вы попытаетесь расширить панель «результат» по горизонтали на JSFiddle, вы обнаружите, что их ширина не изменится. Обратите внимание, что содержимое в child
завернуто в две строки (не, скажем, одну строку), почему? Наверное, Chrome просто жестко кодирует его где-то. Если вы отредактируете контент child
, чтобы сделать его больше ( JSFiddle ), вы обнаружите, что до тех пор, пока есть дополнительное пространство по горизонтали, Chrome сохраняет содержимое двух строк.
Таким образом, мы можем видеть: есть способ предотвратить бесконечный расчет.
Я согласен с гипотезой о том, что: этот проект состоит только в том, чтобы сохранить четыре значения margin / padding на основе той же меры.
этот пост (на китайском языке) также предлагает другую причину: это из-за ориентации чтения / набора. Мы читаем сверху вниз, с фиксированной шириной и высотой (фактически).
В вашем AndroidManifest.xml
указан неверный тег. Вы используете android:Label
в:
<service
android:name=".KarakalpakKeyboard"
android:Label="KarakalpakKeyboard"
android:permission="android.permission.BIND_INPUT_METHOD"
>
это опечатка. Следует android:label
:
<service
android:name=".KarakalpakKeyboard"
android:label="KarakalpakKeyboard"
android:permission="android.permission.BIND_INPUT_METHOD"
>