View border и изменяемый view color?

Здравствуйте, вот «обгуглился», но внятного решения найти не могу, может общество подскажет…


Суть проблемы.


Есть ListView, в адаптере отдаю view.

Каждый item имеет свой цвет который выбирает пользователь с помощью «color picker». С этим нет проблем, но мне хочется еще и к этому всему рамку…

и вот какая беда получается, получается или рамка или цвет, команды перекрывают друг друга…

@Override
	public View getView(int position, View convertView, ViewGroup parent) {

.....
//рисую с хмл в котором у меня прописано только свойство "stroke" 
// во второй строчке устанавливаю цвет который выбрал пользователь.
//если строчки поменять, то получу рамку, а цвета не получу.
		convertView.setBackground(context.getResources().getDrawable(R.drawable.period_row_style));
		convertView.setBackgroundColor(periods.get(position).getColor());

.....
        		return convertView;
	}



Вопрос, как мне получить и рамку и цвет в item?


Спасибо!
  • Вопрос задан
  • 3021 просмотр
Решения вопроса 1
@bimeg
Чтобы скомбинировать два Drawable можно поюзать LayerDrawable например.

Drawable[] d = new Drawable[] { new ColorDrawable(periods.get(position).getColor()), context.getResources().getDrawable(R.drawable.period_row_style)};
convrtView.setBackground(new LayerDrawable(d));


Как-то так.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
web_dev
@web_dev Автор вопроса
))) Наконец, сам не допер, хотя все логично, в shape нужно поставить прозрачный фон.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы