1

hello guys my activity finished when ı'm clicking spinner in popup. but ı dont have this error for samsung phone its for xiaomi and htc. ı cant understand why ı have this error just xiaomi and htc. ı'm tried solved it but its not solved.ı'm found some question like this but its not solved this problem. he using dialog screen ı dont want to use dialog screen. this is my source code :

public void popup_show(){
    inflater = (LayoutInflater) anaurun.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    layout = inflater.inflate(R.layout.adet_popup, (ViewGroup) findViewById(R.id.adet_layout));
    adet_spin = layout.findViewById(R.id.adet_spin);

    DisplayMetrics displayMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    int height = displayMetrics.heightPixels;
    int width = displayMetrics.widthPixels;
    popWin = new PopupWindow(layout, width, height, true);
    popWin.showAtLocation(layout, Gravity.CENTER, 0, 0);
    adapter = new spinner_adapter(this, adet);
    adet_spin.setAdapter(adapter);
    adet_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            secili_adet=Integer.valueOf(adet.get(position));
            Log.d("adet",secili_adet+"");
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });
}

and ı have an error like this :

07-13 14:51:59.195 3042-3042/com.example.hakan.menuglobal E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.hakan.menuglobal, PID: 3042
android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRootImpl$W@845c492 is not valid; is your activity running?
    at android.view.ViewRootImpl.setView(ViewRootImpl.java:696)
    at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:347)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:94)
    at android.widget.PopupWindow.invokePopup(PopupWindow.java:1380)
    at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:1236)
    at android.widget.ListPopupWindow.show(ListPopupWindow.java:671)
    at android.widget.Spinner$DropdownPopup.show(Spinner.java:1235)
    at android.widget.Spinner.performClick(Spinner.java:770)
    at android.support.v7.widget.AppCompatSpinner.performClick(AppCompatSpinner.java:442)
    at android.view.View$PerformClick.run(View.java:22295)
    at android.os.Handler.handleCallback(Handler.java:754)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:163)
    at android.app.ActivityThread.main(ActivityThread.java:6342)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:880)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:770)

this is my popup window

how can ı fix this problem? sorry for my bad english.

0 Answers0