使用 MrEngineer13 的 SnackBar 库实现
Using MrEngineer13's SnackBar library implementation
我正在使用@MrEngineer13 的SnackBar implementation 并且想知道如何捕获 2 个单独的 "ActionClick" 事件 - 根据 actionclick 事件发生的时间,我需要做不同的事情。
建造者看起来像这样 -
new SnackBar.Builder(this)
.withOnClickListener(this)
.withMessage("This library is awesome!") // OR
.withMessageId(messageId)
.withTypeFace(myAwesomeTypeFace)
.withActionMessage("Action") // OR
.withActionMessageId(actionMsgId)
.withTextColorId(textColorId)
.withBackGroundColorId(bgColorId)
.withVisibilityChangeListener(this)
.withStyle(style)
.withDuration(duration)
.show();`
并且 onMessageClick 接受一个 "token" 参数 -
@Override
public void onMessageClick(Parcelable token) {
}
我无法弄清楚的是,如何在点击发生时传递此 "token"。
depending on when the actionclick event occurs, I need to do different things
在 onMessageClick()
的正文中处理:
@Override
public void onMessageClick(Parcelable token) {
if (shouldIDoX()) {
doX();
}
else {
doY();
}
}
(您提供 shouldIDoX()
、doX()
和 doY()
的相关实现。
What I am not able to figure out is, how to pass this "token" when the click happens
Builder
上有一个 withToken()
方法,您可以使用它来提供要传递给 onMessageClick()
的 Parcelable
。话虽这么说,JavaDocs 将其描述为 "The token used to restore the SnackBar state",这让我有点担心弄乱它。
我正在使用@MrEngineer13 的SnackBar implementation 并且想知道如何捕获 2 个单独的 "ActionClick" 事件 - 根据 actionclick 事件发生的时间,我需要做不同的事情。
建造者看起来像这样 -
new SnackBar.Builder(this)
.withOnClickListener(this)
.withMessage("This library is awesome!") // OR
.withMessageId(messageId)
.withTypeFace(myAwesomeTypeFace)
.withActionMessage("Action") // OR
.withActionMessageId(actionMsgId)
.withTextColorId(textColorId)
.withBackGroundColorId(bgColorId)
.withVisibilityChangeListener(this)
.withStyle(style)
.withDuration(duration)
.show();`
并且 onMessageClick 接受一个 "token" 参数 -
@Override
public void onMessageClick(Parcelable token) {
}
我无法弄清楚的是,如何在点击发生时传递此 "token"。
depending on when the actionclick event occurs, I need to do different things
在 onMessageClick()
的正文中处理:
@Override
public void onMessageClick(Parcelable token) {
if (shouldIDoX()) {
doX();
}
else {
doY();
}
}
(您提供 shouldIDoX()
、doX()
和 doY()
的相关实现。
What I am not able to figure out is, how to pass this "token" when the click happens
Builder
上有一个 withToken()
方法,您可以使用它来提供要传递给 onMessageClick()
的 Parcelable
。话虽这么说,JavaDocs 将其描述为 "The token used to restore the SnackBar state",这让我有点担心弄乱它。