这是我的涟漪效应代码:
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:color="@color/button_layout_ropple"
tools:targetApi="lollipop">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="@color/button_layout_ropple" />
</shape>
</item>
</ripple>
和Textview xml代码是:
<TextView
android:layout_width="match_parent"
android:id="@+id/output"
android:textSize="20sp"
android:foreground="@drawable/ripple_effect"
android:background="#f4de97"
android:text="Result"
android:layout_height="65dp"
android:clickable="true" />
触摸Textview时创建的涟漪效果,但我想通过按下按钮创建此效果。可能吗?如果可能,我该怎么办?
以下是该按钮的代码:
<Button
android:id="@+id/buttonClear"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="clear"
android:background="#ECEFF1"
android:textColor="#000000"
android:textSize="20dp" />
按钮处理程序代码是:
buttonClear.setOnClickListener(
new Button.OnClickListener() {
public void onClick(View v) {
input.setText(null);
output.setText("output");
}
}
);
我希望通过按此按钮在Textview上显示涟漪效果。
答案 0 :(得分:0)
这可以通过将performClick()
方法调用放在按钮的onClick
上来完成。不确定这是不是你想要的。
这是一种程序化地调用该textView上的单击的方法。代码快照类似于:
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){
textView.performClick();
}
};