Come sappiamo possiamo impostare action
testo al snackbar
Ma voglio fare l'intero snackbar clickable
.
Per quello ho provato a fare il view
di snackbar
cliccabile ma era inutile. Qualcuno può aiutarmi per favore a risolvere questo?
Codice:
Snackbar snackbar=Snackbar.make(home_btn, content, Snackbar.LENGTH_LONG);
View sbView = snackbar.getView();
sbView.setClickable(true);
sbView.setFocusable(true);
sbView.setBackgroundColor(Color.parseColor("#ffffff"));
TextView tv = sbView.findViewById(android.support.design.R.id.snackbar_text);
tv.setTextColor(Color.parseColor("#001919"));
CoordinatorLayout.LayoutParams params=(CoordinatorLayout.LayoutParams)sbView.getLayoutParams();
params.gravity = Gravity.TOP;
sbView.setLayoutParams(params);
snackbar.show();
sbView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i = new Intent();
i.setAction(action);
i.putExtras(b);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK );
}
});
risposte:
0 per risposta № 1In realtà è colpa mia se ho dimenticato di iniziare intent
. Quindi, la risposta finale sarà
Snackbar snackbar=Snackbar.make(home_btn, content, Snackbar.LENGTH_LONG);
View sbView = snackbar.getView();
sbView.setClickable(true);
sbView.setFocusable(true);
sbView.setBackgroundColor(Color.parseColor("#ffffff"));
TextView tv = sbView.findViewById(android.support.design.R.id.snackbar_text);
tv.setTextColor(Color.parseColor("#001919"));
CoordinatorLayout.LayoutParams params=(CoordinatorLayout.LayoutParams)sbView.getLayoutParams();
params.gravity = Gravity.TOP;
sbView.setLayoutParams(params);
snackbar.show();
sbView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i = new Intent();
i.setAction(action);
i.putExtras(b);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK );
startActivity(i);
}
});