我在第三方库中使用名为Snackbar的控件 - github.com/navasmdc/MaterialDesignLibrary。
问题是它会自动关闭,就像Toast一样。
我要做的是什么:它应该一直持续到我点击LinearLayoutManager linearLayoutM = new LinearLayoutManager(getActivity());
firstItem = linearLayoutM.findFirstVisibleItemPosition();
btn
new SnackBar(ActSplash.this,
"Do you want change color of this button to red?",
"yes",
new View.OnClickListener() {
@Override
public void onClick(View v) {
ButtonFlat btn = (ButtonFlat) findViewById(R.id.buttonSnackBar);
//btn.setTextColor(Color.RED);
}
}).show();
这显示错误无法解析show()
如何阻止Android小吃栏关闭
new SnackBar(ActSplash.this,
"Do you want change color of this button to red?",
"yes", new View.OnClickListener() {
@Override
public void onClick(View v) {
ButtonFlat btn = (ButtonFlat) findViewById(R.id.buttonSnackBar);
//btn.setTextColor(Color.RED);
}
}).setIndeterminate(true)
.show();
答案 0 :(得分:33)
修改强>:
Snackbar
现在是新Android Support Design library的一部分。如果您想无限期地显示它,可以使用LENGTH_INDEFINITE
作为持续时间。 。您应该删除您正在使用的第三方库。例如
Snackbar.make(layout, R.string.snackBarNoNetConnectivity, Snackbar.LENGTH_INDEFINITE)
.show()
旧答案
在致电.setIndeterminate(true)
show()
final SnackBar tmp = new SnackBar(ActSplash.this,
"Do you want change color of this button to red?",
"yes",
new View.OnClickListener() {
@Override
public void onClick(View v) {
ButtonFlat btn = (ButtonFlat) findViewById(R.id.buttonSnackBar);
//btn.setTextColor(Color.RED);
}
});
tmp.setIndeterminate(true);
tmp.show();
答案 1 :(得分:14)
snackbar.setDuration(Snackbar.LENGTH_INDEFINITE);
答案 2 :(得分:3)
简单地做
Snackbar.make(layout, "Some text", Snackbar.LENGTH_INDEFINITE)
.show();