Я хочу знать, есть ли способ получить эффект расширения изображения сплошным цветом только с одной стороны.Как создать чертеж, который расширяется только по вертикали/горизонтали с помощью XML в Android
Предположит, вы начинаете с растровым изображением, как это:
и вы хотите настроить в XML рисует так, чтобы она расширяться и сжиматься по горизонтали сохраняя свои особенности, но по вертикали я хочу, чтобы добавить твердый «синий» цвет на сверху, не касаясь изображения таким образом, что если поместить в качестве фона виджета, который менее широко и выше я получаю это:
Если 9patches предоставляется возможность просто сделать одну сторону расширения, это будет идеально. Но 9 патчей заставляют вас определять расширяемую область в обоих направлениях: это разрушит форму, которая у меня есть внизу.
Это то, что я могу достичь с 9patch:
Это то, что я хочу (имейте в виду, я хочу, чтобы расширить столько, сколько нужно вертикально без масштабирования стрелки (стрелка всегда должна иметь такой же высота):
я могу получить это играть с макетом, но это не очень хорошо для выполнения
Наконец-то я могу написать свою собственную вытяжку, и я знаю, как это сделать, но это не так. работать с RemoteView и, когда не работая с Remote View, уродливо нужно установить его по коду.
Кто-нибудь знает способ создания этого эффекта только с XML-чертежом?
нет вы не можете, 9patch сила вы должны определить прямоугольную область для расширения. Я имею в виду, что вы также должны дать ему минимум 1 пиксель для расширения по горизонтали, что приведет к разрушению функций изображения. –
Так что вы не хотите, чтобы он изменялся горизонтально вообще? Потому что в вашем ответе вы говорите, что хотите, чтобы он сокращался и расширялся по горизонтали. Не следует ли использовать этот эффект, если вы выберете полную ширину в качестве зоны растяжения в 9patch? Если ваше изображение растягивается, не будучи определено как 9patch, ваша арка становится «сплющенной», а? – SnyersK
Я хочу, чтобы он растягивался горизонтально, масштабируя.Это другое, чем растяжение, расширяющееся. если вы загружаете мою фотографию и пытаетесь сделать из нее 9patch, вы сразу поймете, о чем я говорю. Труднее объяснить словами, чем фактически визуализировать его (или это просто, что английский не является моим основным языком, и я не знаю, как лучше его объяснить) –