我试图创建一个toast,它的值应该反映一个数字,并且应该在toast仍然显示时动态更改。我不想为价值的每一个变化创造新的祝酒词。对该值的更改应反映在现有显示的toast本身中。如果可能的话,我该怎么办?
最佳答案
您可以保存从makeText获得的toast实例,并用setText更新它。
更新的
代码:
public class MainActivity extends ActionBarActivity {
private Toast mToast;
private int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.toast).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
if (mToast == null) {
mToast = Toast.makeText(MainActivity.this, "Count " + 0, Toast.LENGTH_LONG);
}
mToast.setText("Count " + count++);
mToast.show();
}
});
}
}