Android 通过编程将蛇形杆的位置更改为顶部

Android 通过编程将蛇形杆的位置更改为顶部,android,android-layout,Android,Android Layout,我希望当出现蛇形条时,显示在顶部。为此,我编写了以下命令: Snackbar mSnak = Snackbar.make(viewHolder.messageBlock, str, Snackbar.LENGTH_SHORT); TextView mTextView = mSnak.getView().findViewById(android.support.design.R.id.snackbar_text); mTextView.setTextAlignment(View.TEXT_ALIG

我希望当出现蛇形条时,显示在顶部。为此,我编写了以下命令:

Snackbar mSnak = Snackbar.make(viewHolder.messageBlock, str, Snackbar.LENGTH_SHORT);
TextView mTextView = mSnak.getView().findViewById(android.support.design.R.id.snackbar_text);
mTextView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);                                  
FrameLayout.LayoutParams params = (FrameLayout.LayoutParams)mSnak.getView().getLayoutParams();
params.gravity = Gravity.TOP;
mSnak.getView().setLayoutParams(params);
mSnak.show();

但它不起作用??并且仍然显示在底部。如何更改SnackBar的初始对齐方式?

使用以下方法使SnackBar显示在屏幕顶部:

Snackbar snack = Snackbar.make(findViewById(android.R.id.content), "Had a snack at Snackbar", Snackbar.LENGTH_LONG);

View view = snack.getView();
FrameLayout.LayoutParams params =(FrameLayout.LayoutParams)view.getLayoutParams();
params.gravity = Gravity.TOP;
view.setLayoutParams(params);
snack.show();

为什么要投反对票!!!!!!?的任何一个答案都没有得到答案的分数。为什么要从杜德那里复制粘贴?你的答案和我的问题之间有什么区别?