Java 限制每天点击按钮的次数
我想限制每天点击一个按钮的次数(5次)。这个按钮允许你转动方向盘 车轮活动Java 限制每天点击按钮的次数,java,android,Java,Android,我想限制每天点击一个按钮的次数(5次)。这个按钮允许你转动方向盘 车轮活动 ImageView imageView = findViewById(R.id.imageView11); imageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { onBackPressed(); }
ImageView imageView = findViewById(R.id.imageView11);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
final SharedPreferences coins = getSharedPreferences("Rewards", MODE_PRIVATE);
final LuckyWheelView luckyWheelView = (LuckyWheelView) findViewById(R.id.luckyWheel);
findViewById(R.id.play).setEnabled(true);
findViewById(R.id.play).setAlpha(1f);
calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
weekday = calendar.get(Calendar.DAY_OF_WEEK);
todayString = year + "" + month + "" + day;
final SharedPreferences spinChecks = getSharedPreferences("SPINCHECK", 0);
final boolean currentDay = spinChecks.getBoolean(todayString, false);
控制盘xml
<Button
android:id="@+id/play"
android:layout_width="245dp"
android:layout_height="79dp"
android:layout_marginStart="60dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="60dp"
android:background="@drawable/back1now"
android:fontFamily="@font/font"
android:text="@string/play"
android:textAppearance="@style/play"
android:textColor="#ffffff"
android:textSize="15sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/Relativespin"
app:layout_constraintVertical_bias="0.61" />
我添加了最后一段代码(我可以这么做)So,而不是对
spinChecks.getBoolean使用布尔值(todayString,false)
,您可以使用Int
值。然后,您将验证spinChecks.getInt(todayString,0)
调用是否高于4,如果高于4,只需调用playButton.seEnabled(false)
,否则,调用setEnabled(true)
so,而不是使用布尔值来表示spinChecks.getBoolean(todayString,false)
,您可以使用Int
值。然后,您将验证spinChecks.getInt(todayString,0)
调用是否高于4,如果是,只需调用playButton.seEnabled(false)
,否则,调用setEnabled(true)
我更新了代码(添加到帖子中的最后一个代码)现在请告诉我如何整合您的code@GNAKALEHACKER这基本上是相同的想法,只是不要使用布尔值,而是使用整数计数。不要在OnClickListener中使用spin.putBoolean(todayString,true),而要使用putInt(todayString,spinChecks.getInt(todayString,0)+1,这样每次单击都会添加1。正如我所解释的,只需检查该值是否高于4,并将您的按钮标记为禁用。我更新了代码(添加到帖子中的最后一个代码),请现在告诉我如何集成您的code@GNAKALEHACKER这基本上是相同的想法,只是不要使用布尔值,而是使用整数计数。不要在OnClickListener中使用spin.putBoolean(todayString,true),而要使用putInt(todayString,spinChecks.getInt(todayString,0)+1,这样每次单击都会添加1。正如我所解释的,只需检查该值是否高于4,并将按钮标记为禁用。
findViewById(R.id.play).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int index = getRandomIndex();
luckyWheelView.startLuckyWheelWithTargetIndex(index);
SharedPreferences.Editor spins = spinChecks.edit();
spins.putBoolean(todayString, true);
spins.apply();
findViewById(R.id.play).setEnabled(false);
findViewById(R.id.play).setAlpha(.5f);