gpt4 book ai didi

android - LinearLayout animate() 剪辑 View ,clipChildren 不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:48:41 25 4
gpt4 key购买 nike

我正在尝试为 container LinearLayout (20dp) 和 btn 按钮 (20dp) 设置动画(将它们向右移动),但它们在main LinearLayout (40dp)。我在两者上都尝试了 clipChildren="false",但它不起作用。我不能为布局使用 match_parent 大小,因为它是一个覆盖应用程序,会阻止后面的触摸。

有什么想法吗?

我的布局:

<LinearLayout
android:id="@+id/main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clipChildren="false"
android:clipToPadding="false" >

<LinearLayout
android:id="@+id/container"
android:layout_width="20dp"
android:layout_height="80dp"
android:clipChildren="false"
android:clipToPadding="false" >
</LinearLayout>

<ImageButton
android:id="@+id/btn"
android:layout_width="20dp"
android:layout_height="80dp"
android:padding="0dp"
android:background="@drawable/btn" />

</LinearLayout>

我的(简化的)代码:

super.onCreate();       
windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
params = new WindowManager.LayoutParams(
LayoutParams.WRAP_CONTENT, //can't have MATCH_PARENT
LayoutParams.WRAP_CONTENT, //can't have MATCH_PARENT
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT |
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL |
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSLUCENT);

LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);
main = (LinearLayout) inflater.inflate(R.layout.main,null);

btn = (ImageButton)main.findViewById(R.id.btn);
container = (LinearLayout)main.findViewById(R.id.container);
btn.setOnClickListener(onClickListener);
windowManager.addView(main, params);
}

动画代码:

public void onClick(View v) {
btn.animate().xBy(100f).setDuration(2000);
container.animate().xBy(100f).setDuration(2000);
}

最佳答案

事实证明,您不能在使用 windowManager.addView 添加到屏幕的初始区域的边界之外绘制。

在我的例子中,我必须使用 windowManager.updateViewLayout(view,layoutParams) 为 View 设置动画。

关于android - LinearLayout animate() 剪辑 View ,clipChildren 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17207510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com