0
當條件滿足時,我試圖解僱Snackbar
。覆蓋設計支持庫行爲
snackbar.setAction("Retry", new View.OnClickListener() {
@Override
public void onClick(View view) {
if(isConnected(getApplicationContext())){
toggleButtonsState(true);
snackbar.dismiss();
} else {
snackbar.show();
}
}
});
snackbar.show();
但是,Snackbar
實現會在單擊操作時自動解除它。
public Snackbar setAction(CharSequence text, final OnClickListener listener) {
TextView tv = this.mView.getActionView();
if(!TextUtils.isEmpty(text) && listener != null) {
tv.setVisibility(0);
tv.setText(text);
tv.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
listener.onClick(view);
Snackbar.this.dismiss();
}
});
} else {
tv.setVisibility(8);
tv.setOnClickListener((OnClickListener)null);
}
return this;
}
一般來說,有沒有修改的Gradle編譯庫,以便與我的需要應付的方法。即。刪除此行Snackbar.this.dismiss();
。我知道我可以搜索源代碼,並將其放入libs文件夾中,然後我可以修改它,但有沒有辦法做到這一點?