0
I created this code here but something is wrong, because every time I click on the button that activates the popup the app closes.
 //Button
private Button pesquisar;
private PopupWindow popUpWindowPesquisa;
private LayoutInflater layoutInflaterPesquisa;
private RelativeLayout relativeLayoutPesquisa;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //Button pesquisar and popup
    pesquisar = (Button) findViewById(R.id.pesquisar);
    relativeLayoutPesquisa = (RelativeLayout) findViewById(R.id.activity_pop_up);
    pesquisar.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            layoutInflaterPesquisa = (LayoutInflater) getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE);
            ViewGroup containerPesquisa = (ViewGroup) layoutInflaterPesquisa.inflate(R.layout.activity_pop_up, null);
            popUpWindowPesquisa = new PopupWindow(containerPesquisa, 600, 800, true);
            popUpWindowPesquisa.showAtLocation(relativeLayoutPesquisa, Gravity.NO_GRAVITY, 500, 500);
            containerPesquisa.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View view, MotionEvent motionEvent) {
                    popUpWindowPesquisa.dismiss();
                    return true;
                }
            });
        }
    });
Error that appears:
FATAL EXCEPTION: main java.lang.NullPointerException
    at android.widget.PopupWindow.showAtLocation(PopupWindow.java:811)
    at study.popup.MainActivity$1.onClick(MainActivity.java:41)
    at android.view.View.performClick(View.java:4240)
    at android.view.View$PerformClick.run(View.java:17721)
    at android.os.Handler.handleCallback(Handler.java:730)
    at android.os.Handler.dispatchMessage(Handler.java:92)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:5103)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:525)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
    at dalvik.system.NativeStart.main(Native Method)
    10
What’s the mistake ?
– ramaral
As I mentioned in the question when I click the button the app closes.
– Danilo Silva
Sorry, it’s the nullpointerexception.
– Danilo Silva
It seems that
relativeLayoutPesquisais void, check whetherrelativeLayoutPesquisa = (RelativeLayout) findViewById(R.id.activity_pop_up);is correct.– ramaral
The worst is that it is. The name of xml is yes.
– Danilo Silva
Danilo, could put the two xmls that are referenced in this activity: the
activity_mainand theactivity_pop_up?– Wakim
Brother, I’ll pass this because I found another solution here. I changed td to something simpler. A friend of mine made with a Fragment and an inflate.
– Danilo Silva