如何应用像
this这样的波纹效果
我已经将依赖项放在app / build.gradle中
应用程序/的build.gradle
dependencies { compile 'com.github.traex.rippleeffect:library:1.3' }
的build.gradle
allprojects{ repositories{ jcenter() maven(url "https://jitpack.io" }
XML文件:
<com.andexert.library.RippleView android:id="@+id/rect1" android:layout_width="match_parent" android:layout_height="wrap_content"> <Button android:id="@+id/enterButton" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Save your user name" /> </com.andexert.library.RippleView>
Java类文件
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.save_user); editText=(EditText) findViewById(R.id.userNameEditText); button=(Button) findViewById(R.id.enterButton); sharedPreferences=getSharedPreferences(SHARED_NAME_STRING,MODE_PRIVATE); String userNameString=sharedPreferences.getString(USER_NAME_STRING,""); editText.setText(userNameString); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String string=editText.getText().toString(); Intent intent=new Intent(SaveUser.this,MainActivity.class); intent.putExtra("user",string); SharedPreferences.Editor editor=sharedPreferences.edit(); editor.putString(USER_NAME_STRING,string); editor.commit(); startActivity(intent); } }); }
它的工作原理,但是我的问题是在纹波效应完成之前打开另一个活动,当我按下按钮时,剩下的纹波完成.我该怎么解决呢?
解决方法
你可以尝试这个图书馆
balysv/material-ripple.
在你的毕业生中,添加以下行:
compile 'com.balysv:material-ripple:1.0.2'
这是怎么做到的:
<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>