简体   繁体   English

Android“正在运行活动吗?” PopupWindow上的BadTokenException

[英]Android “is activity running?” BadTokenException on PopupWindow

My current project demands that a PopupWindow be displayed with a nested Spinner but for some reason, applying this code: (This code essentially instantiates a LinearLayout, creates a Spinner with the elements defined in my array, spinnersRay , and places it all on a PopupWindow) 我当前的项目要求使用嵌套的Spinner显示PopupWindow ,但出于某些原因,应用此代码:(该代码本质上实例化LinearLayout,使用在我的数组spinnersRay中定义的元素创建Spinner,并将其全部放置在PopupWindow上)

    //LINEAR LAYOUT
    editsChangeLinear = new LinearLayout(this);
    editsChangeLinear.setLayoutParams(parentMatches);
    editsChangeLinear.setOrientation(LinearLayout.VERTICAL);
    editsChangeLinear.setBackgroundColor(Color.LTGRAY);


            //ARRAYLIST & ADAPTER
    ArrayList<String> arrayList = new ArrayList<String>();
    for(SpinnerIndex i : spinnersRay){
        if(!i.name.replaceAll("\\s","").equals("TUTORIALS"))
        arrayList.add(i.name);
    }
    spinner = new Spinner(this);
    ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this,
             android.R.layout.simple_spinner_dropdown_item,arrayList);
    spinner.setAdapter(spinnerArrayAdapter);


            //ADD VIEW 
    editsChangeLinear.addView(spinner);


    editsChangePopup = new PopupWindow(editsChangeLinear, 
            LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);


editsChangePopup.setFocusable(true);
    editsChangePopup.setContentView(editsChangeLinear);
            editsChangePopup.showAtLocation(outerScrollView,1,0,0);

I am always given the same BadTokenException whenever I click the Spinner, which clear displays the Strings returned from my i.name calls which merely access the name elements of my own custom Spinner class called SpinnerIndex which extends Spinner. 每当我单击Spinner时,我总是会得到相同的BadTokenException,它清楚地显示了从我的i.name调用返回的字符串,这些i.name调用仅访问我自己的自定义Spinner类的名称元素,该类扩展了SpinnerIndex。 The Spinner (or at least its very first element) appears to be properly formed, but this exception is thrown whenever I tap it. 微调框(或至少是它的第一个元素)看起来格式正确,但是只要我点击它,就会抛出此异常。 I do not understand why. 我不理解为什么。

I have tried placing things in seperate Threads or toying with the context but I am quite lost here. 我曾尝试将事情放在单独的线程中或在上下文中玩弄,但是我在这里很迷茫。

Try to use , May be it may help you 尝试使用,可能对您有帮助

runOnUiThread(new Runnable() {
            @Override
            public void run() {
                editsChangePopup = new PopupWindow(editsChangeLinear, 
                        LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);


                editsChangePopup.setFocusable(true);
                    editsChangePopup.setContentView(editsChangeLinear);
                            editsChangePopup.showAtLocation(outerScrollView,1,0,0);/ TODO Auto-generated method stub

            }
        });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Android:“ BadTokenException:无法添加窗口; 您的活动正在进行吗? - Android: “BadTokenException: Unable to add window; is your activity running? android.view.WindowManager $ BadTokenException:无法添加窗口,您的活动正在运行吗? - android.view.WindowManager$BadTokenException: Unable to add window, is your activity running? 致命异常:android.view.WindowManager $ BadTokenException无法添加窗口 - 令牌无效; 你的活动在运行吗? - Fatal Exception: android.view.WindowManager$BadTokenException Unable to add window — token is not valid; is your activity running? 错误:android.view.WindowManager$BadTokenException:无法添加 window — 令牌 null 无效; 您的活动正在运行吗? - ERROR: android.view.WindowManager$BadTokenException: Unable to add window — token null is not valid; is your activity running? android.view.WindowManager $ BadTokenException:无法添加窗口-令牌android.os.BinderProxy@aba286f无效; 您的活动正在进行吗? - android.view.WindowManager$BadTokenException: Unable to add window — token android.os.BinderProxy@aba286f is not valid; is your activity running? 如何在Android中的PopupWindow内创建Spinner小部件? 单击Spinner时获取BadTokenException - How to create a Spinner widget inside of a PopupWindow in Android? Get BadTokenException when clicking on Spinner 具有活动的简单对话框错误-android.view.WindowManager $ BadTokenException - Simple dialog error with activity - android.view.WindowManager$BadTokenException 通过单击位于 PopUpWindow (Android Studio) 上的按钮打开活动 - Opening activity by clicking on button located on a PopUpWindow (Android Studio) 安卓 | 从另一个(非活动)类启动 PopupWindow - Android | Initiate PopupWindow from another (non activity) class Android AlertDialog是否因BadTokenException而崩溃? - Android AlertDialog crashes with BadTokenException?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM