2011-07-21 6 views
0

私は画面上にListViewを、下にメニューを持っています。メニューキーをクリックするとアニメーションが表示され、画面外にスライドしてListViewが展開されます。それがあるかのようにAndroid、レイアウトアニメーション後のクリックに問題があります

 menuBtmVisable = false; 
     Animation menu_off = AnimationUtils.loadAnimation(this, R.anim.menu_off); 
     menubtm.startAnimation(menu_off); 

     Display display = getWindowManager().getDefaultDisplay(); 
     LayoutParams listlp = new LayoutParams(display.getWidth(), display.getHeight()-87 , 0, 50); 
     ListViewMain.setLayoutParams(listlp); 

menu_off.xml

<set 
    android:fillEnabled="true" 
    android:fillAfter="true" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <translate 
     android:fromYDelta="0" 
     android:toYDelta="120" 
     android:duration="500" 
    /> 
</set> 

それでもダウンメニューで、私はListView項目「13」をクリックすると、(写真参照)が、それは、メニューをクリックし、その結果まだそこに...

あなたはそれを世話するための最善の方法と思いますか?

ありがとうございます!

+0

画像:http://i.stack.imgur.com/4DbpA.jpg – Rob

答えて

0

私はそのような問題の答えを探していましたが、最終的には1週間後に問題を解決することができました。それはあなたのものに似ているので、おそらくそれはあなたを助けるでしょう。

アニメーションにAnimationListener()を設定し、onAnimationEndを希望のとおりに変更します。私の場合、レイアウトを上にスライドしたいので、下から2つのボタンが表示されます。しかし、レイアウトは視覚的に滑ってしまった。ボタンはまだインタラクティブに話すことができませんでした。だからこのようなものがある:

final View screen = findViewById(R.id.welcome_screen); 
final Animation a = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_home_up); 
a.setFillAfter(true); 
a.setAnimationListener(new AnimationListener() { 

    public void onAnimationStart(Animation animation) { 
    } 

    public void onAnimationRepeat(Animation animation) { 
    } 

    public void onAnimationEnd(Animation animation) { 
     screen.clearAnimation(); 
     screen.setPadding(0, -222, 0, 0); 
    } 
}); 
screen.startAnimation(a); 
関連する問題