且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

android Google plus登录自定义

更新时间:2023-12-01 15:57:10

我发现了两种方法:

1)使用自定义按钮进行战斗:

1) Fight it with a custom button:

<Button
    android:id="@+id/btnGooglePlus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/common_signin_btn_text_dark"
    android:text="@string/common_signin_button_text_long"
    android:textColor="@android:color/white"
    android:textAllCaps="false"
    android:textSize="15sp"
    android:paddingEnd="16dp"
    android:paddingStart="62dp"/>

2)不要打架(太多):

2) Don't fight it (too much):

<com.google.android.gms.common.SignInButton
    android:id="@+id/btnGooglePlus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"/>

mGooglePlusSignInButton = (SignInButton) findViewById(R.id.btnGooglePlus);
mGooglePlusSignInButton.setSize(SignInButton.SIZE_WIDE);
setGooglePlusTextAllCaps(mGooglePlusSignInButton, false);

public static void setGooglePlusTextAllCaps(SignInButton signInButton, boolean allCaps)
{
    for (int i = 0; i < signInButton.getChildCount(); i++)
    {
        View v = signInButton.getChildAt(i);

        if (v instanceof TextView)
        {
            TextView tv = (TextView) v;
            tv.setAllCaps(allCaps);
            return;
        }
    }
}

主要技巧似乎是"mGooglePlusSignInButton.setSize(SignInButton.SIZE_WIDE);"方法.

The main trick seems to be the "mGooglePlusSignInButton.setSize(SignInButton.SIZE_WIDE);" method.