2016-12-12 22 views
4

Buttonと同じように、仰角アニメーションをandroid.support.v7.widget.CardViewに追加したいと思います。 res/animで私のセレクタを指すCardViewをクリックすると高さアニメーションが表示されます

android:stateListAnimator="@anim/selector_raise" 

:私はStateListAnimatorを設定しようとした

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="true" android:state_pressed="true"> 
     <objectAnimator android:duration="@android:integer/config_shortAnimTime" 
      android:propertyName="translationZ" android:valueTo="@dimen/touch_raise" 
      android:valueType="floatType" /> 
    </item> 
    <item> 
     <objectAnimator android:duration="@android:integer/config_shortAnimTime" 
      android:propertyName="translationZ" android:valueTo="0dp" 
      android:valueType="floatType" /> 
    </item> 
</selector> 

が、Androidのメーカーは私にエラーを与える:

Element selector must be declared

正しい方法は何ですかそれをするには?

答えて

0

私はあなたのコードを試しましたが、たぶん2番目のセレクタ要素に状態を追加するだけです。

だから

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="true" android:state_pressed="true"> 
     <objectAnimator android:duration="@android:integer/config_shortAnimTime" 
      android:propertyName="translationZ" android:valueTo="@dimen/touch_raise" 
      android:valueType="floatType" /> 
    </item> 
    <item android:state_enabled="true" android:state_pressed="false"> 
     <objectAnimator android:duration="@android:integer/config_shortAnimTime" 
      android:propertyName="translationZ" android:valueTo="0dp" 
      android:valueType="floatType" /> 
    </item> 
</selector> 
0

あなたはres/animフォルダにこの.xmlファイルを作成しようとした完全なコードがされるこの

<item android:state_enabled="true" android:state_pressed="false"> 

で、このライン

<item> 

を変更します。

作成するのが簡単でない場合はres/animatorに作成する必要があります。あなたが問題を検索する場合

は、しかし、それはすでにあなたに可能な解決策を与える enter image description here

関連する問題