如何在 android studio 中显示一次性消息
how to show one time toast messages in android studio
我想在单击按钮时添加“toast message”,然后添加了它。现在我只想显示它**一次**,这意味着如果在第一次点击按钮后**不会再次显示吐司消息**也在重新启动应用程序**后**。
请帮我!
您可能想查看 https://developer.android.com/training/data-storage/shared-preferences。第一次点击后,将一个布尔值写入共享首选项,以指示发生了第一次点击。下次用户单击该按钮时,请确保检查该布尔值是否已设置,如果是,则不显示 toast。
您可以使用存储在另一个 class 中的 SharedPreferences
来实现,例如 Utility.java
:
public class Utility {
public static SharedPreferences preferences(Context context) {
return PreferenceManager.getDefaultSharedPreferences(context);
}
public static Boolean hasSendToast(Context context) {
return preferences(context).getBoolean("Toast", false);
}
public static void setSendToast(Context context, Boolean bool) {
preferences(context).edit()
.putBoolean("Toast", bool).apply();
}
}
并在 MainActivity.java
中的 onClickListener
中与 Toast
一起使用,如下所示:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button);
button.setOnClickListener(v -> {
if (!Utility.hasSendToast(getApplicationContext())) {
Toast.makeText(getApplicationContext(), "My Toast", Toast.LENGTH_SHORT)
.show();
Utility.setSendToast(getApplicationContext(), true);
}
});
}
}
您可以使用布尔标志并使用共享首选项存储值。
btn.onClickListener {
if(!getToastShownStatusFromSharedPreference()) {
showToast()
changeToastShowsStatusToSharedPreference()
}
/* other operations */
}
是的,您可以使用 SharedPreferences 来做到这一点,它是 android 中的首选项管理器。您可以按照以下流程:
- 将布尔值声明为
isFirstTime = true
。
- 单击按钮检查布尔状态,如果为真,则触发 toast 消息并生成
isFirstTime = false
.
就是这样。
我想在单击按钮时添加“toast message”,然后添加了它。现在我只想显示它**一次**,这意味着如果在第一次点击按钮后**不会再次显示吐司消息**也在重新启动应用程序**后**。
请帮我!
您可能想查看 https://developer.android.com/training/data-storage/shared-preferences。第一次点击后,将一个布尔值写入共享首选项,以指示发生了第一次点击。下次用户单击该按钮时,请确保检查该布尔值是否已设置,如果是,则不显示 toast。
您可以使用存储在另一个 class 中的 SharedPreferences
来实现,例如 Utility.java
:
public class Utility {
public static SharedPreferences preferences(Context context) {
return PreferenceManager.getDefaultSharedPreferences(context);
}
public static Boolean hasSendToast(Context context) {
return preferences(context).getBoolean("Toast", false);
}
public static void setSendToast(Context context, Boolean bool) {
preferences(context).edit()
.putBoolean("Toast", bool).apply();
}
}
并在 MainActivity.java
中的 onClickListener
中与 Toast
一起使用,如下所示:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button);
button.setOnClickListener(v -> {
if (!Utility.hasSendToast(getApplicationContext())) {
Toast.makeText(getApplicationContext(), "My Toast", Toast.LENGTH_SHORT)
.show();
Utility.setSendToast(getApplicationContext(), true);
}
});
}
}
您可以使用布尔标志并使用共享首选项存储值。
btn.onClickListener {
if(!getToastShownStatusFromSharedPreference()) {
showToast()
changeToastShowsStatusToSharedPreference()
}
/* other operations */
}
是的,您可以使用 SharedPreferences 来做到这一点,它是 android 中的首选项管理器。您可以按照以下流程:
- 将布尔值声明为
isFirstTime = true
。 - 单击按钮检查布尔状态,如果为真,则触发 toast 消息并生成
isFirstTime = false
.
就是这样。