使用popupwindow时遇到的坑

1.为popupwindow中的空间写响应事件的时候总是报错,比如为一个textview.setText("abc");
都有错,这就很奇怪了,原来是因为, popupwindow对应的那个view里面的控件不能与主视图里的控件搞混了。
在将控件与视图关联的时候:popviw.findViewById(R.id.textviewread);不能省略前面的popview,这个是你popupwindow对应的视图的view,不是你activity对应的view,r如果不写出来,会有 一些莫名其妙的错误。


2.因为当把popupwindow背景设为null,popWindow.setBackgroundDrawable(null);或者根本不写这个的时候,popupwindow是不会响应你的back键的,也就是按back键没有反应,但是如果你用这个方法popWindow.setBackgroundDrawable(R.drawable.apic);为你的popupwindow设置了背景的话,你按back键,popup是会退出的,如果你既想为你的popupwindow设置背景,同时你也希望popupwindow不要响应back键的话,超简单,可以直接在popupwindow视图的xml文件中把最外层的layout设置背景就可以。这样背景也有了,back键也不会响应,完美~~


3.还有一个神坑,我当时想要做成进入某个界面,自动弹出popupwindow,点击“确认”按钮后popuwindow消失的效果,可是总是已进入页面就报错,原来popupwindow不能直接弹出,得有触发事件,或者由定时器触发。我直接在oncreate弹出里面就不行,然后突然记起来了,用了一个定时器,一秒后触发就可以了,一脸黑线。

猜你喜欢

转载自blog.csdn.net/xlm11/article/details/52749876