点击一个appwidget弹出一个dialog形式的activity,这个activity是与appwidget等大的,
那么我怎样才可以让每次弹出的activity正好覆盖住这个appwidget呢,求各位帮忙

解决方案 »

  1.   

    搞不懂什么意思!我只知道,长按屏幕。然后在弹出的对话框中选择窗口小程序,之后找到自己的项目。单击,则在屏幕上会显示自己的appwidget!我不知道你的这个activity是Dialog还是?
      

  2.   

    是一个activity,只是把它的主题设置为了dialog,如何添加appwidget到桌面,这个当然不用说了,
    关键是添加了之后,我点击它,它就会相应的启动一个activity,而activity默认显示的位置都是居中的,
    我的想法就是让activity的位置随着appwidget的改变而改变,比如说,当我将appwidget拖至屏幕右上方时,
    这时就需要这个activity在屏幕的右上方显示,并且每次显示的位置都是正好覆盖住appwidget显示的位置,
    不知明白了与否?
      

  3.   

    要实现你这种效果主要是修改window参数,类似:
     WindowManager m = getWindowManager();    
           Display d = m.getDefaultDisplay();  //为获取屏幕宽、高    
         
           LayoutParams p = getWindow().getAttributes();  //获取对话框当前的参数值    
           p.height = (int) (d.getHeight() * 1.0);   //高度设置为屏幕的1.0   
           p.width = (int) (d.getWidth() * 0.7);    //宽度设置为屏幕的0.8   
           p.alpha = 1.0f;      //设置本身透明度  
           p.dimAmount = 0.0f;      //设置黑暗度  
                   
           getWindow().setAttributes(p);     //设置生效  
           getWindow().setGravity(Gravity.CENTER);    
     setContentView(R.layout.main);
      

  4.   

    搞错了,不好意思,其实这个还是可以设定activity的位置的,只是我无法获取appwidget
    的坐标位置,所以还是不能进行覆盖