2014-03-25 96 views
0

我從服務器獲取數據並將其設置爲listview。每個Listview項目都有兩個textview和一個按鈕。我已經實現了所有的代碼和完美的工作..但任何人都可以幫助我..如何實現Facebook的共享意圖,當點擊特定列表視圖項目的按鈕。我想分享offer_name到facebook牆壁後使用共享意圖選擇器。使用共享目標選擇器在Facebook wallpost上共享Listview項目

enter image description here

這裏是我的getView代碼: -

public View getView(int position, View convertView, ViewGroup parent) { 
    final ViewHolder holder; 
    if (convertView == null) { 
     holder = new ViewHolder(); 
     convertView = mInflater.inflate(R.layout.offer_list_item, parent, 
       false); 
     holder.tv1 = (TextView) convertView.findViewById(R.id.offer_name); 
     holder.tv2 = (TextView) convertView.findViewById(R.id.expiry_date); 
     holder.b = (Button) convertView.findViewById(R.id.item_button); 
     convertView.setTag(holder); 
    } else { 
     holder = (ViewHolder) convertView.getTag(); 
    } 
    Item1 it = item.get(position); 
    holder.tv1.setText(it.getoffer_name()); 
    holder.tv2.setText("offer ends:" + it.getexpiry_date()); 
    holder.b.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      // holder.b.setText("Joined"); 
      // holder.b.setTextColor(Color.parseColor("#ffffff")); 
      // holder.b.setTextSize(10); 
     } 
    }); 
    return convertView; 
} 

回答

0

首先,你只能分享在Facebook塗鴉牆的鏈接。您無法發送任何預先填寫的信息 - 這違反了Facebook政策。

所有第二,你應該堅持的指導方針,而不是強迫用戶使用特定的共享信道(參考)

你可以篩選響應共享Intent(如link)的應用程序,但請有請注意,並非所有用戶都可以安裝Facebook。

總而言之,我不認爲這是一個好主意。

+0

你是正確的兄弟...只感謝鏈接,圖像共享通過意圖選擇器在Android – Amardeepvijay

0
lv.setOnItemClickListener(
      new AdapterView.OnItemClickListener() { 
       @Override 
       public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
        for (int i = 0; i <= 100; i++) { 
         if (position == i) { 

          lv.setDrawingCacheEnabled(true); 
          Bitmap bitmap = lv.getDrawingCache(); 


          File cache = getApplicationContext().getExternalCacheDir(); 
          File sharefile = new File(cache, "toshare.png"); 
          try { 
           FileOutputStream out = new FileOutputStream(sharefile); 
           bitmap.compress(Bitmap.CompressFormat.PNG, 100, out); 
           out.flush(); 
           out.close(); 
          } catch (IOException e) { 

          } 

          Intent share = new Intent(android.content.Intent.ACTION_SEND); 
          share.setType("image/*"); 
          share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + sharefile)); 
          startActivity(share); 
          startActivity(Intent.createChooser(share, "Send your picture using:")); 
         } 
        } 
       } 
      });