我这里写了一个弹出的自定义View 是
<RelativeLayout>
<myView></myView>
<Button></Button>
</RelativeLayout> 当myView里面的内容不改变时,
可以跟随我的点击位置显示,如果当我调用方法改变myView里面的值时,
这个View就回到了位置(0,0)
请问各位高手,怎么又改变了myView里面的内容,又跟着我的点击位置显示求教了!!

解决方案 »

  1.   

    我做过一个弹出自定义的界面的类似的程序..不过弹出效果肯定和楼主的不一样...
    我的是一个listview里面, 如果有checkbox被选中就从屏幕最底下弹出, 没有checkbox被选中就从最底下消失.
    res/anim/footer_appear.xml:
    <set xmlns:android="http://schemas.android.com/apk/res/android" >
        <translate
            android:fromYDelta="+10%p"
            android:toYDelta="0"
            android:duration="300" />
    </set>
    res/anim/footer_disappear.xml
    <set xmlns:android="http://schemas.android.com/apk/res/android" >
        <translate
            android:fromYDelta="0"
            android:toYDelta="+10%p"
            android:duration="300" />
    </set>java:...
    if (isChecked) {
    if (popMenu.getVisibility() != View.VISIBLE) {
    popMenu.startAnimation(AnimationUtils.loadAnimation(this, R.anim.footer_appear));
    }
    popMenu.setVisibility(View.VISIBLE);
    } else {
    if (popMenu.getVisibility() != View.GONE) {
    popMenu.startAnimation(AnimationUtils.loadAnimation(this, R.anim.footer_disappear));
    }
    popMenu.setVisibility(View.GONE);
    }..
     popMenu是我自定义的界面
      

  2.   

    我觉得应该在这段再次加上你的View的定位
    if (popMenu.getVisibility() != View.VISIBLE) {
                    popMenu.startAnimation(AnimationUtils.loadAnimation(this, R.anim.footer_appear));
                }
                popMenu.setVisibility(View.VISIBLE);
      

  3.   

    应该你在改变了view的时候,View的部分初始化失效,比如你移动的位置~
    当回到0,0的时候,你可以自己取下View的位置,看看是0,0还是你所希望的~