我想从"#b66c61"
和"#33b7c4"
等字符串创建Color对象。
这是我的代码:
import android.graphics.Color;
......
String color_string = "#b66c61";
int color_int = Integer.parseInt(color_string.substring(1, color_string.length()-1));
Color color = Color.valueOf(color_int);
当我运行它时,我得到了错误:Cannot resolve method valueOf(int)
虽然我确定该方法存在:https://developer.android.com/reference/android/graphics/Color.html
任何帮助?
答案 0 :(得分:3)
您只需使用<?php if (!defined('BASEPATH')) exit ('No direct script access allowed');
class Tp_modules_model extends DataMapper {
public function __construct(){
parent::__construct();
}
public $table = determineTable($_SESSION['lang']);
public function getModules($ids) {
$this->clear();
return $this->where_in('id', $ids)->get()->all_to_array();
}
public function determineTable($lang) {
if ($lang == 'nl') {
return 'modules_dutch';
} else {
return 'modules';
}
}
}
即可。见下文 -
parseColor
方法String color_string = "#b66c61";
int myColor = Color.parseColor(color_string)
// use int color to set Color
myLayout.setBackgroundColor(myColor);
仅在Android 26中从API 26开始引入。所以它不会在其他API中提供,而且还没有26的支持库。只有在发布后事情变得更清楚时才能说明这种方法的确切用法。
答案 1 :(得分:1)
你可以使用
public static int parseColor (String colorString)
像这样
String color_string = "#b66c61";
int color = Color.parseColor(color_string);
来自Android文档:
支持的格式为:#RRGGBB #AARRGGBB&#39; red&#39;,&#39; blue&#39;,&#39; green&#39;,&#39; black&#39;, &#39; white&#39;,&#39; grey&#39;,&#39; cyan&#39;,&#39; magenta&#39;,&#39; yellow&#39;,&#39; lightgray& #39;,&#39; darkgray&#39;