刮刮卡视图是Android应用程序中最常见的UI组件之一。这种类型的UI组件通常出现在付款应用程序中,例如Google pay和许多其他付款应用程序。现在,如果您是Android开发人员,那么您应该会惊讶于我们如何在我们的Android应用程序中创建这种类型的UI组件。在本文中,我们将介绍Android中Scratch Card View的实现。对于Scratch Card View的实现,我们将使用GitHub中的库。使用该库,我们将创建一个简单的刮刮卡视图,并将其显示出来。
刮刮卡视图在Android中的实现
下面给出了一个示例GIF,以了解我们将在本文中做些什么。注意,我们将使用Java语言实现该项目。
分步实施
步骤1:创建一个新项目
要在Android Studio中创建新项目,请参阅如何在Android Studio中创建/启动新项目。请注意,选择Java作为编程语言。
第2步:将依赖项添加到build.gradle(Module:app)
导航到Gradle脚本> build.gradle(Module:app)并将以下依赖项添加到“依赖项”部分。
implementation ‘com.github.cooltechworks:ScratchView:v1.1’
步骤3:现在在您的Gradle文件中添加Maven URL
导航到Gradle脚本> build.gradle(Project)级别,然后在存储库部分下面的行中添加。
allprojects {
repositories {
// below is the line which we have to add
maven {url “https://jitpack.io”}
google()
jcenter()
}
}
步骤4:使用activity_main.xml文件
转到activity_main.xml文件,并参考以下代码。以下是activity_main.xml文件的代码。
XML
Java
import android.os.Bundle;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.cooltechworks.views.ScratchImageView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// initializing our scratchcardimageview.
ScratchImageView scratchImageView = findViewById(R.id.idScratchCardIv);
scratchImageView.setRevealListener(new ScratchImageView.IRevealListener() {
@Override
public void onRevealed(ScratchImageView iv) {
// this method is called after revealing the image.
Toast.makeText(MainActivity.this, "image is revealed", Toast.LENGTH_SHORT).show();
}
@Override
public void onRevealPercentChangedListener(ScratchImageView siv, float percent) {
// we can check how much percentage of
// image is revealed using percent variable
}
});
}
}
步骤5:使用MainActivity。 Java文件
转到MainActivity。 Java文件并参考以下代码。下面是MainActivity的代码。 Java文件。在代码内部添加了注释,以更详细地了解代码。
Java
import android.os.Bundle;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.cooltechworks.views.ScratchImageView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// initializing our scratchcardimageview.
ScratchImageView scratchImageView = findViewById(R.id.idScratchCardIv);
scratchImageView.setRevealListener(new ScratchImageView.IRevealListener() {
@Override
public void onRevealed(ScratchImageView iv) {
// this method is called after revealing the image.
Toast.makeText(MainActivity.this, "image is revealed", Toast.LENGTH_SHORT).show();
}
@Override
public void onRevealPercentChangedListener(ScratchImageView siv, float percent) {
// we can check how much percentage of
// image is revealed using percent variable
}
});
}
}