Activity启动时如何显示Snackbar? [英] How to show Snackbar when Activity starts?
问题描述
我想在活动开始时显示android Snackbar
(android.support.design.widget.Snackbar)
,就像我们显示Toast
一样.
I want to show android Snackbar
(android.support.design.widget.Snackbar)
when the activity starts just like we show a Toast
.
但是问题是我们必须像这样创建Snackbar
时指定父级布局:
But the problem is we have to specify the parent layout when creating Snackbar
like this:
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
而没有任何点击事件时如何给出父级布局(如果这是一个点击事件,我们可以轻松地传递父级视图)?
How to give parent layout when we show Snackbar
at the start of the activity without any click events (If it was a click event we could've easily pass the parent view)?
推荐答案
只需指向Activity's
XML内的任何View
.例如,您可以为根viewGroup指定一个ID,并使用:
Just point to any View
inside the Activity's
XML. You can give an id to the root viewGroup, for example, and use:
@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();
}
这篇关于Activity启动时如何显示Snackbar?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!