如何创建构造函数,以便我可以传递值

AndroidRocket:

如何将float值从Main Activity传递给其他对象,或者如何为给定的java类在位图构造函数上为canvas绘制创建构造函数。我想将此值传递或设置为例如:X = 40,Y = 30并在DrawOnCanvas canvas.drawBitmap(bitmap,X,Y,null)的重写方法中分配它;我有一个来自github的实现,需要在此类中实现这些值:

public class WatermarkFilter extends GlOverlayFilter {

private Bitmap bitmap;
private Position position = Position.LEFT_TOP;
private Canvas canvas;


public WatermarkFilter(Bitmap bitmap) {
    this.bitmap = bitmap;
}


public WatermarkFilter(Bitmap bitmap, Position position) {
    this.bitmap = bitmap;
    this.position = position;
}


@Override
protected void drawCanvas(Canvas canvas) {
    if (bitmap != null && !bitmap.isRecycled()) {
        switch (position) {
            case LEFT_TOP:
                canvas.drawBitmap(bitmap, "X", "Y", null);
                break;     
            case RIGHT_BOTTOM:
                canvas.drawBitmap(bitmap, canvas.getWidth() - bitmap.getWidth(), canvas.getHeight() - bitmap.getHeight(), null);
                break;
        }
    }
}

public enum Position {
    LEFT_TOP,
    LEFT_BOTTOM,
    RIGHT_TOP,
    RIGHT_BOTTOM
}

}

从我正在使用此方法的MainClass方法中:

 float X = sticker.getMappedBoundPoints()[0];
   float Y = sticker.getMappedBoundPoints()[1];
    Log.d(TAG, "SavedVideo: " + "X" + X + "?/" + "Y" + Y);
 mp4Composer = new Mp4Composer(inputVideoPath, videoPath)
            .rotation(Rotation.ROTATION_270)
            .size(720, 720)
            .filter(new WatermarkFilter(BitmapFactory.decodeResource(mContext.getResources(),R.drawable.ic_launcher_sample),WatermarkFilter.Position.LEFT_TOP))
湿婆神:

从您的问题中,我假设您想在Canvas方法上设置X和Y浮点值,所以很简单地创建一个像

public WatermarkFilter(Bitmap bitmap, Float x, Float y) {
    this.bitmap = bitmap;
    X = x;
    Y = y;
 }

并设置Override方法:

@Override
protected void drawCanvas(Canvas canvas) {

    if (bitmap != null && !bitmap.isRecycled()) {

       canvas.drawBitmap(bitmap,X,Y,null);

在您的MainActivity中:

filter(new WatermarkFilter(BitmapFactory.decodeResource(mContext.getResources(),R.drawable.ic_launcher_sample),X,Y))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何创建构造函数?

如何创建构造函数?

如何创建构造函数?

如何创建匿名类,以便可以将其传递给泛型构造函数?

我可以在Spring中为@Component类创建构造函数吗

如何在JavaScript中创建构造函数以创建构造函数?

我需要帮助来创建构造函数并返回布尔值和字符串

是否可以在C ++中创建构造函数数组?

是否可以为数组C#创建构造函数?

创建构造函数签名

创建构造函数图

是这个工厂吗?我如何为结构创建构造函数?

Flutter:如何在我的 Style 类中创建构造函数?

如何使用箭头函数创建构造函数

如何在 R 中创建构造函数?

如何使用可选参数创建构造函数?

如何在Julia中为结构创建构造函数?

如果JavaScript不支持古典继承,为什么我可以创建构造函数并使用new关键字?

为多个函数创建构造函数

如何声明模板化函数,以便可以在类构造函数/函数中传递

创建构造函数选项(JavaScript的)

在Pharo或Smalltalk中创建构造函数

输入“ctor”来创建构造函数

为此VendingMachine类创建构造函数

如何将多个参数作为输入发送到 WorkManager?或者如何创建构造函数?或者如何将对象作为输入传递?

TS2351:如何在ts中为new函数创建构造函数类型

我是否必须为Java中所有继承的类创建构造函数?

从用户输入创建构造函数时,不允许类的重复值

如何在Kotlin Android中为数据类创建构造函数?