2017-07-14 8 views
2

ボタンのリップルを私のアクティビティのonCreate()に表示する必要があります。私がスキャンしたすべてのコードのうち、リップル効果は、ボタンが押されたときだけ表示されます。ボタンをクリックすることなく、デフォルトでリップルを表示する方法を教えてください。ボタンをクリックしなくてもリップルアニメーションを実現するには

+0

http://www.tothenew.com/blog/ripple-effect-in-android/ を> ---このリンクの参照を取り、変更を加えます。 OnCreateメソッドでRippleDrawableとButtonを初期化した後、onTouchイベントの外に次の2行を追加します。 rippleDrawable.setHotspot(event.getX()、event.getY()); rippleDrawable.setColor(ColorStateList.valueOf(getResources()。getColor(R.color.red))); – yash786

+0

setHotspot()にはevent.getX()とevent.getY()が必要です。 onCreate()で 'event'を呼び出す方法は? –

答えて

2

ボタンをクリックする必要がありますが、はプログラムでです。 メソッドでyourButton.performClick()を使用し、ボタンのクリックイベントでハンドルするコードを実行しないことを確認してください。変数を使用してプログラムで実行しているかどうかを確認するか、実際のアクションを実行しますか?

yourbutton clicklistener { 
if(isprogrammatic){ 
// dont do anything 
isprogrammatic = false 
} 
else{ 
// run your code 
} 
} 

OnCreateの

onCreate(Bundle..){ // your on create method 

    //yes it is programmatic 
    isprogrammatic = true; 
    yourbutton.performClick(); 

    } 
関連する問題