禁用WebView的缩放

时间:2014-08-29 05:50:08

标签: android android-animation

我有一个问题,我有以下布局:

<RelativeLayout
    android:id="@+id/Parent"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <OTHERVIEWS..../>

    <WebView
        android:id="@+id/WebView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></WebView>

</RelativeLayout>

我希望能够扩展RelativeLayout中的每个子节点 - 但不缩放WebView。是否可以这样做:

    findViewById(R.id.Parent).animate().scaleX(0.75f).scaleY(0.75f).setDuration(750).start();

然后覆盖WebView中的某个方法使其忽略其父缩放 - 或者其他方式?有什么想法吗?

我知道最简单的解决方案就是扩展每个特定的孩子 - 但由于我在很多地方都需要这个功能,因此在webview中一般来说这是最好的解决方案。

1 个答案:

答案 0 :(得分:1)

您正在访问父ID,例如

findViewById(R.id.Parent).animate().scaleX(0.75f).scaleY(0.75f).setDuration(750).start();

包括WebView在内的所有其他视图都在其中。当您为父视图设置动画时,所有子视图也将设置动画。只需创建另一个布局(您要设置动画或我想要设置动画的区域)

  <RelativeLayout
        android:id="@+id/Parent"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

 <RelativeLayout
        android:id="@+id/AnimatingLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <OTHERVIEWS..../>

</RelativeLayout>// it is the end of AnimatingLayout

        <WebView
            android:id="@+id/WebView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></WebView>

    </RelativeLayout>

现在获取AnimatingLayout的ID,如

findViewById(R.id.AnimatingLayout).animate().scaleX(0.75f).scaleY(0.75f).setDuration(750).start();

//只有那些视图会动画哪个是AnimatingLayout(RelativeLayout)的子项。

问我是否还有其他问题..