如何更改 Material Chip View 的边框颜色和关闭/删除按钮?
How to change border color and close / delete button for Material Chip View?
我正在使用 Material Chip View。无论如何,我可以更改芯片边框颜色和移除/删除芯片按钮吗?
Material Chip View https://github.com/robertlevonyan/materialChipView
我提到了你给定的库。
您可以通过替换库中的图像(名为 'ic_close.png')轻松更改 remove/delete 按钮。
要添加边框,您需要更改 Chip.java
的代码,例如
private void initTypedArray(AttributeSet attrs) {
TypedArray ta = getContext().getTheme().obtainStyledAttributes(attrs, R.styleable.Chip, 0, 0);
chipText = ta.getString(R.styleable.Chip_mcv_chipText);
hasIcon = ta.getBoolean(R.styleable.Chip_mcv_hasIcon, false);
chipIcon = ta.getDrawable(R.styleable.Chip_mcv_chipIcon);
closable = ta.getBoolean(R.styleable.Chip_mcv_closable, false);
selectable = ta.getBoolean(R.styleable.Chip_mcv_selectable, false);
backgroundColor = ta.getColor(R.styleable.Chip_mcv_backgroundColor, ContextCompat.getColor(getContext(), R.color.colorChipBackground));
selectedBackgroundColor = ta.getColor(R.styleable.Chip_mcv_selectedBackgroundColor, ContextCompat.getColor(getContext(), R.color.colorChipBackgroundClicked));
textColor = ta.getColor(R.styleable.Chip_mcv_textColor, ContextCompat.getColor(getContext(), R.color.colorChipText));
selectedTextColor = ta.getColor(R.styleable.Chip_mcv_selectedTextColor, ContextCompat.getColor(getContext(), R.color.colorChipTextClicked));
closeColor = ta.getColor(R.styleable.Chip_mcv_closeColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseInactive));
selectedCloseColor = ta.getColor(R.styleable.Chip_mcv_selectedCloseColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
cornerRadius = (int) ta.getDimension(R.styleable.Chip_mcv_cornerRadius, getResources().getDimension(R.dimen.chip_height) / 2);
strokeSize = (int) ta.getDimension(R.styleable.Chip_mcv_strokeSize, 2);
strokeColor = ta.getColor(R.styleable.Chip_mcv_strokeColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
iconText = ta.getString(R.styleable.Chip_mcv_iconText);
iconTextColor = ta.getColor(R.styleable.Chip_mcv_iconTextColor, ContextCompat.getColor(getContext(), R.color.colorChipBackgroundClicked));
iconTextBackgroundColor = ta.getColor(R.styleable.Chip_mcv_iconTextColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
ta.recycle();
}
你需要改变颜色,<color name="colorChipCloseClicked">#F5F5F5</color>
到<color name="colorChipCloseClicked">#D32F2F</color>
它看起来像这样,
希望对你有帮助!!
我正在使用 Material Chip View。无论如何,我可以更改芯片边框颜色和移除/删除芯片按钮吗?
Material Chip View https://github.com/robertlevonyan/materialChipView
我提到了你给定的库。
您可以通过替换库中的图像(名为 'ic_close.png')轻松更改 remove/delete 按钮。
要添加边框,您需要更改 Chip.java
的代码,例如
private void initTypedArray(AttributeSet attrs) {
TypedArray ta = getContext().getTheme().obtainStyledAttributes(attrs, R.styleable.Chip, 0, 0);
chipText = ta.getString(R.styleable.Chip_mcv_chipText);
hasIcon = ta.getBoolean(R.styleable.Chip_mcv_hasIcon, false);
chipIcon = ta.getDrawable(R.styleable.Chip_mcv_chipIcon);
closable = ta.getBoolean(R.styleable.Chip_mcv_closable, false);
selectable = ta.getBoolean(R.styleable.Chip_mcv_selectable, false);
backgroundColor = ta.getColor(R.styleable.Chip_mcv_backgroundColor, ContextCompat.getColor(getContext(), R.color.colorChipBackground));
selectedBackgroundColor = ta.getColor(R.styleable.Chip_mcv_selectedBackgroundColor, ContextCompat.getColor(getContext(), R.color.colorChipBackgroundClicked));
textColor = ta.getColor(R.styleable.Chip_mcv_textColor, ContextCompat.getColor(getContext(), R.color.colorChipText));
selectedTextColor = ta.getColor(R.styleable.Chip_mcv_selectedTextColor, ContextCompat.getColor(getContext(), R.color.colorChipTextClicked));
closeColor = ta.getColor(R.styleable.Chip_mcv_closeColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseInactive));
selectedCloseColor = ta.getColor(R.styleable.Chip_mcv_selectedCloseColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
cornerRadius = (int) ta.getDimension(R.styleable.Chip_mcv_cornerRadius, getResources().getDimension(R.dimen.chip_height) / 2);
strokeSize = (int) ta.getDimension(R.styleable.Chip_mcv_strokeSize, 2);
strokeColor = ta.getColor(R.styleable.Chip_mcv_strokeColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
iconText = ta.getString(R.styleable.Chip_mcv_iconText);
iconTextColor = ta.getColor(R.styleable.Chip_mcv_iconTextColor, ContextCompat.getColor(getContext(), R.color.colorChipBackgroundClicked));
iconTextBackgroundColor = ta.getColor(R.styleable.Chip_mcv_iconTextColor, ContextCompat.getColor(getContext(), R.color.colorChipCloseClicked));
ta.recycle();
}
你需要改变颜色,<color name="colorChipCloseClicked">#F5F5F5</color>
到<color name="colorChipCloseClicked">#D32F2F</color>
它看起来像这样,
希望对你有帮助!!