Android设计支持库现在包括对Snackbar的支持。
我已经使用以下代码创建了一个:
Snackbar.make(findViewById(R.id.root_layout), result, Snackbar.LENGTH_LONG)
.setAction("Dismiss", new View.OnClickListener() {
@Override
public void onClick(View v) {
}
}).show();
快餐店只需轻轻一扫,就可以把它打发走。但是,我也想使用它自己的操作按钮(使用setAction函数创建)来关闭它。
然而,似乎没有任何可用的函数可以做到这一点。
发布于 2015-09-20 19:25:07
实现一个单击操作,并让它为空。单击空的单击操作将取消snackbar。
Snackbar.make(coordinatorLayoutView, "Service Enabled", Snackbar.LENGTH_LONG)
.setAction("DISMISS", new View.OnClickListener() {
@Override
public void onClick(View v) {
}
})
.show();
发布于 2021-10-22 21:00:56
如果您希望将snackbar放在静态方法中,请使用此方法。
public static void showSnackbar(Activity activity,String msg){
Snackbar snackBar = null;
snackBar = Snackbar.make( ((activity.findViewById(android.R.id.content))), msg,20000);//Snackbar.LENGTH_INDEFINITE
Snackbar finalSnackBar = snackBar;
//
View.OnClickListener action = new View.OnClickListener() {
@Override
public void onClick(View view) {
finalSnackBar.dismiss();
}
};
snackBar.setAction("OKAY",action )
.setActionTextColor(activity.getApplicationContext().getResources().getColor(android.R.color.holo_red_light ));
snackBar.show();
}
https://stackoverflow.com/questions/30729312
复制相似问题