我希望能够更好地控制我的应用中的社交登录按钮,并且所有这些按钮在尺寸,边距,填充等方面看起来都相同。
对于那个puprose,我做了例如不要使用现成的facebook登录按钮,而是使用facebook SDK中的相应样式的普通按钮:
<Button
android:id="@+id/myFacebookButton"
android:layout_width="fill_parent"
android:layout_height="48dp"
android:text="@string/com_facebook_loginview_log_in_button_long"
android:drawableStart="@drawable/com_facebook_button_icon"
android:paddingLeft="18dp"
style="@style/com_facebook_button"/>
现在我正在尝试为谷歌登录按钮做同样的事情,但我似乎找不到相应的风格或图标可绘制。
有人能指出我正确的方向吗?
更新澄清问题:
我不知道的是,如果在auth软件包中已经有一个可以使用的样式和可绘制的内容,如果有,可以在哪里找到它。
答案 0 :(得分:0)
SDK中没有G +按钮的自定义样式。 https://developers.google.com/identity/sign-in/android/#customizing_your_sign-in_button 如果您正在寻找自己定制的话,请查看此答案。 - https://stackoverflow.com/a/29658836/6715557
<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"/>
,或者
<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;
}
}
}
您可以自己绘制或只是从互联网上下载。 希望这会有所帮助。