在Android中,如何从ColorPicker中选择不同的颜色,并将其应用于同一屏幕中的文本或不同形状?

在Android中,如何从ColorPicker中选择不同的颜色,并将其应用于同一屏幕中的文本或不同形状?,android,android-canvas,paint,touchscreen,color-picker,Android,Android Canvas,Paint,Touchscreen,Color Picker,若用户从colorpicker中选择任何颜色,那个么应该能够将其应用于Android中同一活动或屏幕中的文本或不同形状 在我的屏幕上,有形状和颜色选择器。通过使用onTouch事件,我可以绘制不同的形状。我还可以在屏幕上写任何东西。在我的应用程序中,颜色选择器工作正常 首先,如果我画三角形,写一些像“meena”这样的文字,然后应用颜色选择器中的蓝色,效果很好 第二步,在同一个屏幕上(文本“meena”下方),我从颜色选择器中点击了rose color,选择了不同的形状,比如矩形,然后我写了一个

若用户从colorpicker中选择任何颜色,那个么应该能够将其应用于Android中同一活动或屏幕中的文本或不同形状

在我的屏幕上,有形状和颜色选择器。通过使用onTouch事件,我可以绘制不同的形状。我还可以在屏幕上写任何东西。在我的应用程序中,颜色选择器工作正常

首先,如果我画三角形,写一些像“meena”这样的文字,然后应用颜色选择器中的蓝色,效果很好

第二步,在同一个屏幕上(文本“meena”下方),我从颜色选择器中点击了rose color,选择了不同的形状,比如矩形,然后我写了一个单词apple。这次我已经选择了玫瑰色

因此,从第一步和第二步开始,所有不同的形状和文字都用玫瑰色

我的问题是,用户如何从颜色选择器中选择不同的颜色,并在同一活动或屏幕中使用触摸事件在触摸屏上以不同的颜色书写文本或绘制不同的形状?因此,在整个屏幕上可以找到不同的颜色

但是,我的问题是,在整个屏幕上只有一种颜色被应用


我想将颜色选择器中的颜色应用于同一屏幕或活动中的文本,如下所示。请参见上图以供参考。

您需要使用油漆并更改颜色选择器拾取的油漆颜色,并像这样使代码无效

public class DrawPaint extends View{
Paint textPaint = new Paint();
Paint circlePaint = new Paint();

public DrawPaint(Context context){
    super(context);
    //set default colors for them 
    textPaint.setColor(Color.RED);
    circlePaint.setColor(Color.GREEN);
}

@Override
protected void onDraw(Canvas canvas){
    super.onDraw(canvas);
    canvas.drawText("mu text " , 0 , 0 , textPaint);
    canvas.drawCircle(10 , 10 , 20 , circlePaint);
}

public void changeTextColor(int color){
    textPaint.setColor(color);
    invalidate();
}

public void changeCircleColor(int color){
    circlePaint.setColor(color);
    invalidate();
}
}
获取此视图的引用,并在从颜色选择器获取颜色时调用changeColor方法


或者这里是工作解决方案

public void colorChanged(int color){PreferenceManager.getDefaultSharedPreferences(this.edit().putin(color_PREFERENCE_KEY,color.commit();mpain.setColor(color);}我已经完成了。请再次查看图片和我的问题@Vipin!好的,我知道了。张贴你的代码,我没有任何工作的例子。也许你会错过一点解决办法手指疼痛找不到你@毒蛇