2014-09-10 31 views
2

我想創建一個自定義的佈局,我的谷歌加按鈕,任何想法?我試着調用谷歌加按鈕的OnClickEvent(這不起作用),我試着改變背景圖片。源代碼:如何在Android中使用自定義佈局製作Google plus按鈕?

  <com.google.android.gms.plus.PlusOneButton 
      xmlns:plus="http://schemas.android.com/apk/lib/com.google.android.gms.plus" 
      android:id="@+id/plus_one_button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      plus:size="standard" 
      plus:annotation="inline"/> 

    holder.mPlusOneButton = (PlusOneButton) holder.content.findViewById(R.id.plus_one_button); 
    holder.mPlusOneButton.initialize("http://www.xxx.xx/", 0); 
+0

已解決的分類:Google說:「您只能使用其提供的格式中的+1按鈕。您不能使用其他圖片來表示+1按鈕的功能。「 - [link](https://developers.google.com/+/web/+1button/#gapi.plusone.render) – jobbert 2014-09-10 14:08:09

回答

2
  1. 到您的佈局
  2. 設置OnClickListener添加自定義按鈕,自定義按鈕
  3. 使用PlusClient描述here處理登錄過程

作爲例子我可以爲處理Google Plus登錄提供我的控制器類:

public class GooglePlusLoginController implements GooglePlayServicesClient.ConnectionCallbacks, GooglePlayServicesClient.OnConnectionFailedListener { 

    public static final int REQUEST_CODE_SIGN_IN = 100; 

    private PlusClient googlePlusClient; 
    private ConnectionResult connectionResult; 
    private Activity activity; 

    public GooglePlusLoginController(Activity activity) { 
     this.activity = activity; 


     googlePlusClient = new PlusClient.Builder(activity, this, this) 
       .setActions("http://schemas.google.com/AddActivity") 
       .setScopes(Scopes.PLUS_LOGIN) // Space separated list of scopes 
       .build(); 
     googlePlusClient.connect(); 
    } 

    // call this method in your click handler 
    public void login() { 
     try { 
      connectionResult.startResolutionForResult(activity, REQUEST_CODE_SIGN_IN); 
     } catch (IntentSender.SendIntentException e) { 
      googlePlusClient.connect(); 
     } 
    } 

    // call this method in your activity's onActivityResult 
    public void onActivityResult() { 
     if(!googlePlusClient.isConnected() && !googlePlusClient.isConnecting()) { 
      googlePlusClient.connect(); 
     } 
    } 

    @Override 
    public void onConnected(Bundle bundle) { 
     // connected, you can now get user's data from 
     // googlePlusClient.getCurrentPerson() 
    } 

    @Override 
    public void onDisconnected() { 
    } 

    @Override 
    public void onConnectionFailed(ConnectionResult result) { 
     connectionResult = result; 
    } 

    private void logout() { 
     if(googlePlusClient.isConnected()) { 
      googlePlusClient.clearDefaultAccount(); 
      googlePlusClient.disconnect(); 
      googlePlusClient.connect(); 
     } 
    } 
} 
+0

對不起我的問題是含糊不清,我的意思是一個Google +1按鈕,但無論如何我會給你正確的答案;) – jobbert 2014-09-11 07:09:55

相關問題