我有一个完成任务的组件,正尝试使用nativescript中的颜色选择器插件获取颜色。问题在于它以int格式(例如-899123或-989)显示结果。
我创建了一个方法并将其调用,这给了我这个结果,请参见下面的代码:
import { ColorPicker } from 'nativescript-color-picker';
let picker = new ColorPicker();
export class MyComponent extends Observable {
public Background:ColorPicker;
@Output() MessageEvent = new EventEmitter<string>();
constructor(private page: Page) {
this.Background = picker;
}
ShowColor() {
this.Background
.show('#fff000', 'RGB')
.then(result => {
console.log('color int: '+result);
this.input.Background = result;
})
.catch(err => {
console.log(err);
});
}
}
有帮助吗?
答案 0 :(得分:0)
如文档中所述,使用Color
模块将颜色值从整数转换为十六进制或rgba。
import { Color } from 'tns-core-modules/Color';
....
const color = new Color(result);
console.log(color.hex); // will return hex code
....
答案 1 :(得分:0)
太棒了,我刚刚尝试了这段代码,它为我工作了。
this.input.background = result;
const color = new Color(this.input.background);
this.input.background = color.hex;
console.log(this.input.background);
我在this.input.background中使用了结果值,因为当我尝试使用const color = new Color(result);时它显示错误。所以它与上面的方法一起工作。 非常感谢