zoukankan      html  css  js  c++  java
  • Android 自定义Popupwindow 注意事项,手机和平板的区别

    首先自定义ppw是要继承Popupwindow 的

    而要成功的显示出自定义的ppw就必须实现下面的三句代码

    // 必要的三要素下面,不然popWind显示不出来
    this.setContentView(mView);
    this.setWidth(ViewGroup.LayoutParams.MATCH_PARENT);
    this.setHeight(ViewGroup.LayoutParams.MATCH_PARENT);

    //上面的代码是必须设置的,不然ppw显示不出来。

    this.setFocusable(true);// 使popwind中获取不到焦点,默认是false,这里是为了使EditText没有焦点,从而不会弹出输入框

    this.setBackgroundDrawable(new BitmapDrawable());
    this.setOutsideTouchable(true); // 点击popwind以外的地方关闭popWind

    //这两句代码我要来解释一下

    (1)、setFocusable()这个方法如同上面的解释一样,但我要提醒的是:

        如果你自定义的ppw包含了ListView这个控件并设置了OnItemClickListener事件,

        因为我在项目开发中遇到这个问题所以提出来,这句代码在手机端的时候不管你设置了true还是false  ,ListView的OnItemClickListener事件都会触发,但在Android平板中设置了false是不会触发OnItemClickListener这个事件的,所以要提醒大家注意一下

    (2)、setOutsideTouchable()这个方法的说明就是点击ppw以外的地方关闭ppw,但如果你这么就设置为true的话,那么告诉你这是不起任何作用的,别问我为什么,因为我也不知道,如果想要起作用就必须还要设置这个setBackgroundDrawable(new BitmapDrawable());// 这样设置才能点击屏幕外dismiss窗口  ,这两句代码同时使用才能起到效果

  • 相关阅读:
    想你了
    新华都总裁兼CEO唐骏演讲
    中国99%的白领以及他们的家庭即将面临破产
    你的英语水平就可以达到跟美国人交流的水平啦
    经验语录
    荒谬的加息传言
    人生格言
    不要为油荒找借口
    房地产调控失利 三次调控势不可免
    假设你的月收入2000元,你应该这样用
  • 原文地址:https://www.cnblogs.com/woaixingxing/p/5581386.html
Copyright © 2011-2022 走看看