获得小吃店支持库的高度

时间:2015-11-05 12:45:59

标签: android android-support-library snackbar

我正在使用Snackbar和fab支持库。 我想获得Snackbar的高度,通过单行和多行消息给出正确的高度值。

var=mysnackbar.gethight();

但此代码不起作用,因为snackbar确实有gethight()

3 个答案:

答案 0 :(得分:4)

Snackbar在调用show()方法后只有高度。试试电话:

mSnackbar.show();
int height = mSnackbar.getView.getHeight();

或者您可以使用回调来监听Snackbar显示的事件并返回其高度,如下所示:

mSnackbar.setCallback(new Snackbar.Callback {
    @Override
    Public void onDismissed(Snackbar snackbar, int event) {
    }

    @Override
    Public void onShown(Snackbar snackbar) {
        int height = snackbar.getView.getHeight();
    }
)
mSnackbar.show();

答案 1 :(得分:0)

这应该可行。将以像素为单位给出Snackbar的高度。

int height = yourSnackbar.getView().getHeight();

参考文件: https://developer.android.com/reference/android/support/design/widget/Snackbar.html#getView()

https://developer.android.com/reference/android/view/View.html#getHeight()

答案 2 :(得分:0)

添加@Grace Coder的回答

Snackbar.setCallback()已被弃用。

  

现在您需要使用Snackbar.addCallback()

const appRoutes: Routes = [
  {
    path: 'contact',
    component: ContactComponent,
  },
  {
    path: 'aside',
    component: PopupComponent,
    outlet: 'aux'
  }
];