問題やプルリクエストには対処されません。変更が必要な場合は、独自のバージョンをフォークすることを検討してください。
Android ビュー用の波及効果ラッパー
compile ' com.balysv:material-ripple:1.0.2 '
以下のウィジェットで最新のバージョン番号を確認するか、「リリース」にアクセスしてください。
View
で静的初期化子を使用します (カスタマイズについては、以下のxml
属性を参照してください)。
MaterialRippleLayout . on ( view )
. rippleColor ( Color . BLACK )
. create ();
または、レイアウト ファイル内でView
MaterialRippleLayout
でラップします。
< com .balysv.materialripple.MaterialRippleLayout
android : id = " @+id/ripple "
android : layout_width = " match_parent "
android : layout_height = " wrap_content " >
< Button
android : layout_width = " match_parent "
android : layout_height = " wrap_content "
android : layout_gravity = " center "
android : text = " Button inside a ripple " />
</ com .balysv.materialripple.MaterialRippleLayout>
AdapterView
で使用する場合は、 rippleInAdapter
true
に設定する必要があります
コード内で XML 属性またはセッターを使用して構成します。
app : mrl_rippleOverlay = "true" // if true, ripple is drawn in foreground; false - background
app : mrl_rippleColor = "#ff0000" // color of ripple
app : mrl_rippleAlpha = "0.1" // alpha of ripple
app : mrl_rippleDimension = "10dp" // radius of hover and starting ripple
app : mrl_rippleHover = "true" // if true, a hover effect is drawn when view is touched
app : mrl_rippleRoundedCorners = "10dp" // radius of corners of ripples. Note: it uses software rendering pipeline for API 17 and below
app : mrl_rippleInAdapter = "true" // if true, MaterialRippleLayout will optimize for use in AdapterViews
app : mrl_rippleDuration = "350" // duration of ripple animation
app : mrl_rippleFadeDuration = "75" // duration of fade out effect on ripple
app : mrl_rippleDelayClick = "true" // if true, delays calls to OnClickListeners until ripple effect ends
app : mrl_rippleBackground = "#FFFFFF" // background under ripple drawable; used with rippleOverlay="false"
app : mrl_ripplePersistent = "true" // if true, ripple background color persists after animation, until setRadius(0) is called
OnClickListener
MaterialRippleLayout
に設定します。
findViewById ( R . id . ripple ). setOnClickListener ( new View . OnClickListener () {
@ Override public void onClick ( View v ) {
// handle me
}
});
または、 AdapterView
で使用する場合は、単にOnItemClickListener
を使用します。
14 よりも古いバージョンをサポートする必要がある不運な開発者のために、それを行う方法があります。
このライブラリは、Jake Wharton のアニメーション バックポート (http://nineoldandroids.com/) とともに使用して、インポートをimport android.animation.*;
to: import com.nineoldandroids.animation.*;
、 import android.util.Property
。 import com.nineoldandroids.util.Property;
そして、14 より大きい API を使用している場合にのみ、MaterialRippleLayout.java ファイルで関数shouldDelayChildPressedState()
を呼び出します。
バリス・ヴァレントゥケヴィシウス
Copyright 2015 Balys Valentukevicius
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.