2016-08-23 28 views
0

ArrayListには、URLからPDFを取得するボタンを持つアダプタがあります。私はIntent.ACTION_VIEWを使用していて、ArrayListの最初の要素を除いて正常に動作しています。このアプリケーションでは、PDFを開くためのアプリケーションを選択できません。Google ChromeアプリケーションでURLが開きます。残りの要素を選択する場合は、PDFをGoogle ChromeまたはAdobeで開くかどうかを選択できます。ここでIntent.ACTION_VIEWの最初の要素でアプリケーションを選択できません

は、私はPDFを取得するために使用したコードの断片である:

final ArrayList<Item> data = new ArrayList<>(); 
MyAdapter myAdapter = new MyAdapter(data,new MyAdapter.MyOnItemClickListener() 
{ 
    @Override 
    public void myOnItemClick(int button, int position) { 
      Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));   
      startActivity(intent); 
    } 
}, getContext()); 
recView.setAdapter(myAdapter); 

は、どのように私はすべてのボタンは、ユーザーが両方のアプリケーションの間で選択させることを強制することができますか?

ありがとうございます!

+0

それはあなたのオプションを与えるものではありません、私はあなたが行うものとURLを比較示唆 'ArrayList'のちょうど最初の要素である場合。 – Abbas

+0

@Abbas URLは同じですが、URLの最後のパラメータを変更するだけです(各項目に関連するPDFを表示する)。なぜ、私が最初の1つの要素をクリックしたときに2つのオプションが与えられないのか分かりません。 –

+0

私のために働いています。私は[this](http://cdrsee.org/jhp/pdf/workbook1_eng_ed2.pdf)を使って開きました。 – Abbas

答えて

0

最後に、私はsetDataAndTypeメソッドでpdfとして意図を設定して解決しました。これで、各要素のすべてのボタンで使用するアプリケーションを選択できるようになりました。

これは、コードの抜粋です:

Intent intent = new Intent();       
intent.setDataAndType(Uri.parse(url), "application/pdf"); 
startActivity(intent); 
関連する問題