Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 充气后如何显示弹出窗口_Java_Android_Android Popupwindow - Fatal编程技术网

Java 充气后如何显示弹出窗口

Java 充气后如何显示弹出窗口,java,android,android-popupwindow,Java,Android,Android Popupwindow,我有一个PopUpWindow,需要在活动开始时立即加载,它使用屏幕的DisplayMetrics以及其他内容。但是,对于行welcome.showAtLocation(popupview2,Gravity.CENTER,0,0),我收到错误“无法添加窗口--标记null无效;您的活动正在运行吗?” 如何仅在检索资源时才显示PopUpWindow?我的PopUpWindow就像一个水花(这样它可以在点击后立即消失),所以窗口必须是用户看到的第一个东西 我的代码: @Override protec

我有一个PopUpWindow,需要在活动开始时立即加载,它使用屏幕的DisplayMetrics以及其他内容。但是,对于行
welcome.showAtLocation(popupview2,Gravity.CENTER,0,0),我收到错误“无法添加窗口--标记null无效;您的活动正在运行吗?”

如何仅在检索资源时才显示PopUpWindow?我的PopUpWindow就像一个水花(这样它可以在点击后立即消失),所以窗口必须是用户看到的第一个东西

我的代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

LayoutInflater inflater = (LayoutInflater) this
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    DisplayMetrics displayMetrics = getResources().getDisplayMetrics();

    dpWidth = displayMetrics.widthPixels / displayMetrics.density;

    dpHeight = displayMetrics.heightPixels / displayMetrics.density;

popupview2 = inflater.inflate(R.layout.start_layout, null);

welcome = new PopupWindow(popupview2, (int) dpWidth, (int) dpHeight);
    welcome.setAnimationStyle(R.style.Animation2);

    welcome.showAtLocation(popupview2, Gravity.CENTER, 0, 0);

}

基本上,有什么“onResourcesLoaded”之类的东西我可以使用吗?感谢您的帮助。

当您的代码被调用时,系统还没有准备好度量指标

将所有代码移到此方法中:

@Override
public void onAttachedToWindow() {
    // TODO Auto-generated method stub
    super.onAttachedToWindow();

}

当所有指标都可以使用时,将调用此方法,因为活动已完全显示。

这只起作用了!谢谢你,善良的编码员