2012-12-17 60 views
0

我有以下代碼從遠程觀看者拉動PDF文檔查看:的Android PDF查看重定向

package com.example.techvault; 

import java.io.File; 
import java.io.IOException; 
import java.util.List; 

import android.app.Activity; 
import android.content.Intent; 
import android.content.pm.PackageManager; 
import android.net.Uri; 
import android.os.Bundle; 
import android.os.Environment; 
import android.util.Log; 

public class PDFFromServerActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_document); 
     Intent in= getIntent(); // gets the previously created intent 
     String url = in.getStringExtra("full_url"); 
     if (!url.startsWith("http://") && !url.startsWith("https://")){ 
      url = "http://ezdrawdocs.com" + url; 
     } 
     Log.d("pdf url: ",url); 
     String extStorageDirectory = Environment.getExternalStorageDirectory() 
     .toString(); 
     File folder = new File(extStorageDirectory, "pdf"); 
     folder.mkdir(); 
     File file = new File(folder, "Read.pdf"); 
     try { 
      file.createNewFile(); 
     } catch (IOException e1) { 
      e1.printStackTrace(); 
     } 

     Downloader.DownloadFile(url, file); 

     showPdf(); 
    } 
    public void showPdf() 
     { 
      File file = new File(Environment.getExternalStorageDirectory()+"/pdf/Read.pdf"); 
      PackageManager packageManager = getPackageManager(); 
      Intent testIntent = new Intent(Intent.ACTION_VIEW); 
      testIntent.setType("application/pdf"); 
      List list = packageManager.queryIntentActivities(testIntent, PackageManager.MATCH_DEFAULT_ONLY); 
      Intent intent = new Intent(); 
      intent.setAction(Intent.ACTION_VIEW); 
      Uri uri = Uri.fromFile(file); 
      intent.setDataAndType(uri, "application/pdf"); 
      startActivity(intent); 
     } 
} 

當backarrow選擇它重定向到一個空白屏幕。如何選擇backarrow時如何控制重定向到哪個活動? 感謝

回答

0

可以定義你的清單中的活動根據與

<meta-data 
    android:name="android.support.PARENT_ACTIVITY" 
    android:value="com.example.yourapp.SomeActivity" /> 
+0

感謝您的快速回復。我把代碼放在我的清單下,調用pdf視圖的活動下,它仍然顯示一個空白屏幕。 – rstewart

+0

那麼,如果你回到你的活動,它不會通過onCreate。您應該重寫onResume來說明返回到活動時必須發生的事情。 –

0

你在做什麼這裏實現我所說的「直通活動」(即沒有UI,並立即啓動一個活動一個不同的活動)...我個人儘量避免它們。

這就是說,你需要做的是在之後撥。這將關閉您的直通,這樣當您退出PDF查看器時,您將不會回到直通。