作为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);
}
}
你能帮我解决这个问题吗?
答案 0 :(得分:0)
您必须首先创建视图,然后使用其实例。您的自定义视图对象为空
最好从Java代码中获取自定义视图的实例,然后使用addView()函数将其添加到布局的根视图中。然后重新调用该对象