我有一个活动类的对象,如下所示:

 CustomPaint customCanvasPaint=(CustomPaint) dialog.findViewById(R.id.customCanvasPaint);

如何将此对象传递给类,如下所示:
public class CustomPaint extends CanvasView {
  public CustomPaint(Context context) {
    super(context);
    initialize(context);
  }

  public CustomPaint(Context context, AttributeSet attrs) {
    super(context, attrs);
    initialize(context);
  }


  public void initialize(Context context){
    LayoutInflater inflater=(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View view=inflater.inflate(R.layout.custom_paint,null);
    CanvasView canvasView = (CanvasView) view.findViewById(R.id.customCanvasView);
    canvasView.setPaintStrokeColor(Color.RED);
    canvasView.setPaintStrokeWidth(12f);
  }
}

我希望在初始化方法中自定义对象,但绘制颜色和绘制宽度不会更改。
我该怎么做?
谢谢您。

最佳答案

public class CustomPaint extends CanvasView {
 CanvasView mCanvasView;
 public CustomPaint(Context context,CanvasView canvasView) {
    super(context);
    this.mCanvasView = canvasView;
    initialize(context);
  }

  public CustomPaint(Context context, AttributeSet attrs,CanvasView canvasView) {
    super(context, attrs);
    this.mCanvasView = canvasView;
    initialize(context);
  }

public void initialize(Context context){

canvasView.setPaintStrokeColor(Color.RED);
canvasView.setPaintStrokeWidth(12f);
 }
  }

形成活动
 CanvasView canvasPaint=(CanvasView) dialog.findViewById(R.id.canvasPaint);
CustomPaint mCustomPaint = new CustomPaint(this,canvasPaint);

关于android - 将 Activity 对象传递给Android中的非 Activity 类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45408133/

10-11 22:53
查看更多