2016-05-11 44 views
0

I want these buttonsAndroid Studio中定製的Facebook和Google+登錄按鈕


I have these buttons

我想定製我的Facebook和Google+登錄按鈕,誰能幫我嗎?
這是我的佈局代碼

<com.facebook.login.widget.LoginButton 
     android:id="@+id/login_button" 
     android:layout_width="fill_parent" 
     android:layout_height="45dp" 
     android:layout_weight="1" 
     android:text="" 
     android:layout_gravity="center" 
     android:padding="0dp" /> 


    <com.google.android.gms.common.SignInButton 
     android:id="@+id/sign_in_button" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:layout_gravity="center" 
     android:padding="0dp" />   

回答

1

而不是使用默認的UI組件,你應該使用按鈕。不管你想要什麼樣的設計。點擊按鈕,你必須編碼登錄/註冊或任何你想要的。

這僅是示例。

<Button 
android:id="@+id/loginButtonFacebook" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/shape_blue_button" 
android:text="@string/facebook_txt" /> 

<Button 
android:id="@+id/loginButtonGoogle" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/shape_red_button" 
android:text="@string/google_txt" /> 

Facebook的: 在您的活動做如下:

public class LoginActivity extends FragmentActivity { 

    public static CallbackManager callbackmanager; 

    @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      FacebookSdk.sdkInitialize(getApplicationContext()); 
      callbackmanager = CallbackManager.Factory.create(); 
      setContentView(R.layout.activity_login); 


      LoginManager.getInstance().registerCallback(callbackmanager, new FacebookCallback<LoginResult>() { 
       @Override 
       public void onSuccess(LoginResult loginResult) { 

        // Use Access Token loginResult.getAccessToken().getToken()); 
       } 

       @Override 
       public void onCancel() { 
        // Handle cancel event 
       } 

       @Override 
       public void onError(FacebookException error) { 
        //Handle Error event 
       } 
      }); 
    } 
    } 

按鈕單擊事件:

LoginManager.getInstance().logInWithReadPermissions(this, Arrays.asList(
         "email", "public_profile", "user_friends")); 

清單文件 -

<provider 
android:name="com.facebook.FacebookContentProvider" 
android:authorities="com.facebook.app.FacebookContentProviderYOUR_APP_ID" 
android:exported="true" /> 
+0

loginButton =(LoginButton)findViewById( R.id.login_按鈕); loginButton.setReadPermissions(Arrays.asList(「public_profile」,「email」));這是我正在使用的,我將無法使用相同的按鈕類型。 幫幫我! –

+0

用代碼檢查我的更新答案。 –

+0

@YashUbale,如果此答案有幫助,則將其標記爲已接受的答案或給予正確的投票。 –