2017-05-16 4 views
0

AndroidでGoogle SignInボタンをカスタマイズしたいと考えています。現在、私は次のコードを使用して非常に基本的なデフォルトのレイアウトを持っています。AndroidでGoogle SignInButtonをカスタマイズする

<com.google.android.gms.common.SignInButton 
      android:id="@+id/sign_in_button" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"/> 

私は現在のボタンレイアウトに満足していません。ボタンのテキスト、デフォルトのボタンの背景色、または完全なカスタムボタンのレイアウトを作成する必要がありますか?

ありがとうございます。

PS:私は非常に単純な

+0

あなたは、ご希望のカスタムボタンを作成し、クリックリスナーを設定することができますmSignInButton.performClick()を使用してSignInButtonのclickイベントを実行します。詳細については、こちらの[リンク](https://developer.android.com/reference/android/view/View.html#performClick())を参照してください。 –

答えて

1

そのをAndroidに新しいです、あなたはこの

<Button 
android:id="@+id/button" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_centerHorizontal="true" 
android:text="@string/common_signin_button_text_long" /> 

あなたはあなたのボタンをカスタマイズすることができませんする必要がありますが、あなたはguidelinesに従うことを確認する必要があります。 編集:このライブラリをチェックしてくださいcustom signin button

あなたがリニアレイアウトを作成し、画像を追加することができます。

+0

ボタンの左側にどのようにGoogleアイコンを追加できますか?私は苦労しました。ありがとう – user1590595

+0

答えを更新しました。私の答えが役に立ったら、受け入れてupvoteしてください。 –

0

は、私はあなたがそれ実用的ではなく、この

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

     if (v instanceof TextView) 
     { 
      TextView tv = (TextView) v; 
      tv.setText("My Text"); 
      tv.setAllCaps(true); 
      tv.setCompoundDrawablesWithIntrinsicBounds(R.drawable.smiley, 0, 0, 0); 
      //here you can customize what you want 
      return; 
     } 
    } 
} 

別の方法のようなXMLの何かをしかししなければならないと思うのセキュアでない

TextView textView = (TextView) signInButton.getChildAt(0); 
//Customize here 
関連する問題