繁体   English   中英

在按钮上单击我要显示祝酒消息

[英]On a button click I want to display a toast message

我希望仅在单击此按钮的前三下显示此消息,并且即使在重新启动应用程序之后也不要在此之后显示此消息,我想知道实现此消息的最佳方法。 我计划制作一个数据库,并在按下按钮时在该数据库中输入值,并将我的Toast逻辑放在if语句内。 我想知道是否有更好的方法可以不使用数据库。

如果更好地意味着您更轻松,那么可以使用SharedPreferences机制。

共享首选项基本上是整个活动共有的属性集,或者可以由每个活动单独使用。

class Listener implements OnClickListener{
    final private SharedPreferences prefs;
    Listener(SharedPreferences prefs){
         this.prefs=prefs;
    }
    public void onClick(View view) {
        int count = prefs.getInt("toastCount",0);
        if(count>=3) return;
        //do something else here
        SharedPreferences.Editor editor = prefs.edit();
        editor.putInt("toastCount", count+1);
        editor.commit();
    }
}

您可以使用活动中的getPreferences()getSharedPreferences()方法来启动此侦听器

我认为共享首选项比数据库更好。

您只需在共享的首选项中添加count(int)

您可以使用以下代码:

button.setOnClickListener(new OnClickListener() {
public void onClick(View view) {

        Toast.makeText(app.getBaseContext(),"Your message", 
            Toast.LENGTH_SHORT).show();
}

});

考虑将数据保留在内存中的某个位置。 这样的琐碎数据不应该进入数据库。 这将是一个错误的决定。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM