我想在按下按钮的同时在屏幕上显示小点,例如 pin 代码......
switch (view.getId()){
case R.id.buttonNum1:
editor.putString("PinNumbers",getString(R.string.numberOne));
int x = 10;
int y = 30;
int r = 100;
Paint mPaint = new Paint();
mPaint.setColor(Color.BLACK);
Canvas mCanvas = new Canvas();
mCanvas.drawCircle(x,y,r,mPaint);
break;
答案 0 :(得分:0)
您可以通过创建涟漪效果来实现
在drawable-v21文件夹中创建一个可绘制的名称,如pin_button_ripple,并添加以下代码
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?android:colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="oval">
<solid android:color="?android:colorPrimary" />
</shape>
</item>
</ripple>
现在在布局文件中将其设置为按钮的背景,并在活动中定义单击侦听器
<Button android:id="@+id/btnPinButton" android:layout_width="100dp" android:layout_height="100dp" android:layout_centerInParent="true" android:background="@drawable/pin_button_ripple" android:padding="20dp" android:text="10"/>
你会看到圆圈形状的涟漪效果,就像我们输入Pin一样 通过键盘输入数字或密码并显示该效果