2016-10-28 50 views
-1

我被困在一個我認爲應該很簡單的問題上。我在活動上有兩個圖像按鈕:一個是「速率」;另一個是「分享」。我想要的是當一個人點擊「分享」時,它會在他們的時間線上發佈圖片和消息。如何在Facebook上分享帶有留言的照片?

我已經有Facebook的SDK集成,所以這裏是我嘗試使用代碼:

public ImageButton imgbutton3, imgbutton2; 
public CallbackManager callbackManager; 
public ShareDialog shareDialog; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    FacebookSdk.sdkInitialize(getApplicationContext()); 

    setContentView(R.layout.game_console); 

    imgbutton3 = (ImageButton)findViewById(R.id.imageButton3); 
    imgbutton3.setOnClickListener(ImgClickListener); 
    imgbutton2 = (ImageButton)findViewById(R.id.imageButton2); 
    imgbutton2.setOnClickListener(ImgClickListener); 


} 

private View.OnClickListener ImgClickListener = new View.OnClickListener()  { 
    @Override 
    public void onClick(View v) { 
     switch (v.getId()) { 
      case R.id.imageButton3: 
       //post to facebook... 
       callbackManager = CallbackManager.Factory.create(); 
       shareDialog = new ShareDialog(this); //(stuck here! :() 



       break; 
      case R.id.imageButton2: 
       //do a google rating.... 
       break; 

     } 
    } 


}; 

份額對話框下設一個彎彎曲曲的紅線說,它不能解析的方法。我應該在這裏做什麼?我想讓sharedialog在單擊按鈕後顯示並傳遞圖像和文本,但它不允許我在onclicklistener方法中使用任何方法。

任何幫助,將不勝感激。

回答

0
 ShareLinkContent content = new ShareLinkContent.Builder().setContentTitle(strTitle).setContentDescription(strDesc).setImageUrl(uri). 
           .setContentUrl(android.net.Uri.parse(extractLinks(strDesc))).build(); 
         ShareDialog shareDialog = new ShareDialog(ViewFacebook.this); 
         shareDialog.show(content, ShareDialog.Mode.AUTOMATIC); 
         shareDialog.registerCallback(callbackManager, mShareDialog); 

private FacebookCallback<Sharer.Result> mShareDialog = new FacebookCallback<Sharer.Result>() { 

     @Override 
     public void onSuccess(Sharer.Result result) { 
      Toast.makeText(ViewFacebook.this, "Publish Success!"), Toast.LENGTH_LONG).show(); 

     } 

     @Override 
     public void onCancel() { 
      Toast.makeText(ViewFacebook.this, 
        "Publish cancelled", 
        Toast.LENGTH_SHORT).show(); 
     } 

     @Override 
     public void onError(FacebookException error) { 
      Toast.makeText(ViewFacebook.this, error.getMessage(), Toast.LENGTH_LONG).show(); 
     } 
    }; 
+0

查看Facebook不存在。你從哪裏得到這個?它不是Facebook SDK的一部分。 – user3623689

+0

它的正義活動實例。你可以把你的活動實例。 – dipali

+0

「.show();」你的代碼的一部分在我的IDE中出現紅色。我試圖再次輸入它,但「秀」沒有出現在intellisense中。 – user3623689

相關問題