Java Android如何在Canvas.drawColor中使用文本输入

Java Android如何在Canvas.drawColor中使用文本输入,java,android,eclipse,string,android-canvas,Java,Android,Eclipse,String,Android Canvas,我有两个问题你也许可以帮我,我是编程新手,这可能很容易,但我找了几天的答案,都没能找到。我正在做一个简单的android应用程序,你在一个纯文本字段中输入一个十六进制数,当你点击一个按钮时,画布就会被创建,你会看到画布上十六进制数的颜色(例如:0xff000000,你会得到黑色)不幸的是,我无法将字符串作为整数变量使用到Canvas.drawcolor()中,有人能告诉我如何正确执行此操作,和/或我所做的操作出错的原因吗 我的第二个问题是,在创建画布时,如何使画布显示,而不使我的按钮和文本字段从

我有两个问题你也许可以帮我,我是编程新手,这可能很容易,但我找了几天的答案,都没能找到。我正在做一个简单的android应用程序,你在一个纯文本字段中输入一个十六进制数,当你点击一个按钮时,画布就会被创建,你会看到画布上十六进制数的颜色(例如:0xff000000,你会得到黑色)不幸的是,我无法将字符串作为整数变量使用到Canvas.drawcolor()中,有人能告诉我如何正确执行此操作,和/或我所做的操作出错的原因吗

我的第二个问题是,在创建画布时,如何使画布显示,而不使我的按钮和文本字段从布局中消失

这是我的代码,我创建了toast以查看是否正确获取字符串:

public class MainActivity extends Activity implements TextWatcher{
    private Bitmap mBitmap;
    private Canvas mCanvas;
    private ImageView mImageView;
    private EditText mHexadecimal;
    private String comments;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mHexadecimal = (EditText) findViewById(R.id.Hexadecimal);
        mHexadecimal.addTextChangedListener(this);

    }

public void onClick(View v) {
        mBitmap = Bitmap.createBitmap(300, 300, Bitmap.Config.ARGB_8888);
        mCanvas = new Canvas(mBitmap);
        comments = mHexadecimal.getText().toString();
        Toast.makeText(getApplicationContext(), comments,Toast.LENGTH_LONG).show();
        mCanvas.drawColor(Integer.parseInt(comments,16));       
        mImageView = new ImageView(this);
        mImageView.setImageBitmap(mBitmap);
        setContentView(mImageView);
        }

好吧,你可以试着做这样的事情:

String color = "#FCFC0000"; //this is your color string
int colorCode = Integer.parseInt(string.replaceFirst("^#",""), 16);
然后尝试在
mCanvas
中设置此颜色代码