Android Snackbar在尝试为自定义布局充气时不会全宽显示

Android Snackbar在尝试为自定义布局充气时不会全宽显示,android,layout-inflater,android-snackbar,Android,Layout Inflater,Android Snackbar,我正试图用我的自定义布局更改snackbar,但是自定义布局没有占据snackbar的全部宽度。为什么 这是我的密码:- CoordinatorLayout snackbarCoordinatorLayout; snackbarCoordinatorLayout = (CoordinatorLayout) findViewById(R.id.snackbarCoordinatorLayout); RelativeLayout objRelativ

我正试图用我的自定义布局更改snackbar,但是自定义布局没有占据snackbar的全部宽度。为什么

这是我的密码:-

        CoordinatorLayout snackbarCoordinatorLayout;

        snackbarCoordinatorLayout = (CoordinatorLayout) findViewById(R.id.snackbarCoordinatorLayout);
        RelativeLayout objRelativeLayout = new RelativeLayout(mContext);
        RelativeLayout.LayoutParams objLayoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        // Create the Snackbar
        final Snackbar snackbar = Snackbar.make(snackbarCoordinatorLayout, "", Snackbar.LENGTH_INDEFINITE);
        // Get the Snackbar's layout view
        Snackbar.SnackbarLayout layout = (Snackbar.SnackbarLayout) snackbar.getView();

        TextView textView = (TextView) layout.findViewById(android.support.design.R.id.snackbar_text);
        textView.setVisibility(View.INVISIBLE);

        LayoutInflater objLayoutInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View snackView = objLayoutInflater.inflate(R.layout.snackbar_layout, null);// use the parent ViewGroup instead of null        // Configure the view

        Button btnInvite = (Button) snackView.findViewById(R.id.btn_invite_snackbar);
        Button btnCancel = (Button) snackView.findViewById(R.id.btn_close_snackbar);

        btnInvite.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                snackbar.dismiss();
                launchShareActivity();
            }
        });

        btnCancel.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                snackbar.dismiss();
            }
        });
        snackView.setLayoutParams(objLayoutParams);
        layout.addView(snackView, 0);
        snackbar.show();
以下是snackbar_layout.xml和cordinator布局文件内容:-

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:layout_alignParentBottom="true"
        android:background="#000">

        <Button
            android:id="@+id/btn_invite_snackbar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="10dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/rounded_bg"
            android:includeFontPadding="false"
            android:paddingLeft="15dp"
            android:paddingRight="15dp"
            android:text="@string/invite_your_friends_to_studyboard"
            android:textAllCaps="false"
            android:textColor="@color/white" />

        <Button
            android:id="@+id/btn_close_snackbar"
            android:layout_width="45dp"
            android:layout_height="match_parent"
            android:layout_alignParentRight="true"
            android:background="@android:color/transparent"
            android:gravity="center_horizontal|center_vertical"
            android:text="X"
            android:textColor="@color/white"
            android:textSize="22sp" />
    </RelativeLayout>
<!--Cordinator Layout used-->
        <android.support.design.widget.CoordinatorLayout
            android:id="@+id/snackbarCoordinatorLayout"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
<android.support.v4.view.ViewPager
                    android:id="@+id/home_view_pager"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:background="@null">

                </android.support.v4.view.ViewPager>

        </android.support.design.widget.CoordinatorLayout>


请在代码中添加以下行:-

layout.setPadding(0, 0, 0, 0); //set padding to 0
您可以参考此链接的代码:-

发布您的snackbar布局file@AshishShukla我已经添加了布局文件,您也可以发布协调器布局吗?@tsiro我在评论后在自定义布局下方添加了协调器布局代码。当snackbar变为可见时,snackbar两侧的深灰色区域出现了?也为我工作:)谢谢您