活动开始时如何显示小吃店?
我想在活动开始时显示android Snackbar
(android.support.design.widget.Snackbar)
,就像我们显示一个Toast
。
但问题是我们必须在创buildSnackbar
时指定父级布局,如下所示:
Snackbar.make(parentlayout, "This is main activity", Snackbar.LENGTH_LONG) .setAction("CLOSE", new View.OnClickListener() { @Override public void onClick(View view) { } }) .setActionTextColor(getResources().getColor(android.R.color.holo_red_light )) .show();
如何在没有任何点击事件的情况下在活动的开始处显示Snackbar
时给出父级布局(如果是点击事件,我们可以轻松地通过父级视图)?
只需指向Activity's
XML中的任何View
。 例如,您可以给根viewGroup一个id,并使用:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); View parentLayout = findViewById(android.R.id.content); Snackbar.make(parentLayout, "This is main activity", Snackbar.LENGTH_LONG) .setAction("CLOSE", new View.OnClickListener() { @Override public void onClick(View view) { } }) .setActionTextColor(getResources().getColor(android.R.color.holo_red_light )) .show(); //Other stuff in OnCreate(); }
直到现在,我自己也一直在展示Snackbar。 这是显示Snackbar的最简单方法。 要将其显示为主要活动,请将这两行放入OnCreate()
Snackbar snackbar = Snackbar.make(findViewById(android.R.id.content), "Welcome To Main Activity", Snackbar.LENGTH_LONG); snackbar.show();
在onCreate中调用这个方法
Snackbar snack = Snackbar.make( (((Activity) context).findViewById(android.R.id.content)), message + "", Snackbar.LENGTH_SHORT); snack.setDuration(Snackbar.LENGTH_INDEFINITE);//change Duration as you need //snack.setAction(actionButton, new View.OnClickListener());//add your own listener View view = snack.getView(); TextView tv = (TextView) view .findViewById(android.support.design.R.id.snackbar_text); tv.setTextColor(Color.WHITE);//change textColor TextView tvAction = (TextView) view .findViewById(android.support.design.R.id.snackbar_action); tvAction.setTextSize(16); tvAction.setTextColor(Color.WHITE); snack.show();
你可以试试这个库。 这是一个Android默认小吃包的包装。 https://github.com/ChathuraHettiarachchi/CSnackBar
Snackbar.with(this,null) .type(Type.SUCCESS) .message("Profile updated successfully!") .duration(Duration.SHORT) .show();
这包含多种types的小吃店,甚至是一个自定义的小吃店
尝试这个
Snackbar.make(findViewById(android.R.id.content), "Got the Result", Snackbar.LENGTH_LONG) .setAction("Submit", mOnClickListener) .setActionTextColor(Color.RED) .show();
- 将浮点数舍入到2位小数的最佳做法是什么?
- Wakelock和FLAG_KEEP_SCREEN_ON之间的区别?
- SearchView getActionView返回null
- 从LinearLayout获取子元素
- 如何在Android中将颜色整数转换为hexstring?
- DownloadManager.Request.setNotificationVisibility失败,并显示jSecurityException:无效值:2
- 如何通过在ViewPager中用手指滑动禁用分页,但仍然能够以编程方式刷卡?
- 如何将Eclipse项目导入Android Studio?
- 如何限制我的EditTextinput数值(可能是小数和有符号)input?