如何将参数从主要活动传递到自定义视图

时间:2018-11-21 11:36:05

标签: android

作为this answer, 我需要将值从主Activity传递到自定义视图。单击按钮后,将调用cmd。然后将值传递到自定义视图。但是单击按钮后,出现此错误。

createBall()

这是我的MainActivity

com.example.ball E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.ball, PID: 12141
    java.lang.NullPointerException: Attempt to invoke virtual method 'void com.example.ball.customView.fresh(int, int, int)' on a null object reference

这是我的自定义视图

public class MainActivity extends AppCompatActivity {

    private WindowManager wml;
    private customView myCus;
...
    private void createBall(int radius) {

        if (radius > 150) return;
        WindowManager wm1 = this.getWindowManager();
        int width = wm1.getDefaultDisplay().getWidth();
        int height = wm1.getDefaultDisplay().getHeight();
        myCus.fresh(width, height, radius);

    }
}

你能帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您必须首先创建视图,然后使用其实例。您的自定义视图对象为空

最好从Java代码中获取自定义视图的实例,然后使用addView()函数将其添加到布局的根视图中。然后重新调用该对象