我需要用键盘视图移动吐司

时间:2019-07-16 12:06:31

标签: android android-toast

我有一个键盘,当我处于横向模式时可以水平移动,但是对于Toast,我总是将其放在屏幕中央,尽管我需要在键盘中央。

    View v = LayoutInflater.from(toastContext).inflate(R.layout.toast, 
     null);
    TextView tv = (TextView) v.findViewById(R.id.message);
    tv.setText(text);

    mToast.setView(v);
    mToast.setDuration(duration);
    mToast.setGravity(android.view.Gravity.CENTER, 0, 0);

图像中提到了期望值和实际值enter image description here

2 个答案:

答案 0 :(得分:0)

  

定位吐司

     

标准吐司通知出现在屏幕底部附近,水平居中。您可以使用 setGravity(int,int,int)方法更改此位置。它接受三个参数:重力常数,x位置偏移和y位置偏移。

     

例如,如果您决定将吐司面包显示在左上角,则可以这样设置重力:

mToast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);
  

如果要向右微移位置,请增加第二个参数的值。要微调它,请增加最后一个参数的值。

     

如果您想了解更多click here

答案 1 :(得分:0)

Rect rec = mykeyboardcontainerview.getInputWindowRect;
int xCenter = rect.centerX();

mToast.setGravity(Gravity.LEFT|Gravity.TOP, xCenter, 0);

上面的代码对我有用。