我已閱讀並嘗試過無數版本的此問題無濟於事。我已經看到了答案,早在2011年和2014年中期。不幸的是,許多部分答案和解釋不清的建議造成了更多的問題而不是答案。我在iTunes App Store中有一個Apple應用程序,可執行我試圖使用此Android應用程序執行的所有操作。在Apple App世界中,查看PDF文件相對容易,但我在Android上完成它非常困難。我承認我創作Android應用的經驗非常有限。在Android應用程序中加載和查看本地(捆綁)pdf
問題是,我有一個Android應用程序,主要活動有一個ListView,列出了大約35個pdf格式的圖表的標題。其中每一個都是可點擊的,以便在全屏活動(查看)中查看。每張PDF格式都是半頁寬度,並且從1/2頁到兩頁的任何長度。所以新的活動(pdf視圖)將需要滾動。由於這是一款適用於手機或平板電腦的應用程序,因此新的活動(pdf視圖)需要可縮放。用戶完成對PDF的查看後,他們需要一個選項返回到主要活動。用戶然後可以選擇另一個圖表進行查看。
我已經完成的事情是: - 對主要活動 圖表標題的ListView控件 - 啓用用於偵聽的ListView 每個條目 - 新活動(PDF瀏覽)訪問 - 使用putExtras - getExtras的變量傳遞,正在
某些代碼(從主activity.java):
@Override
public void onClick(View v) {
String scroll_page = new String("CommonVehicleCodeViolations.pdf");
Intent intent = new Intent(this, scroll_view.class);
intent.putExtra("extra_scroll_page", scroll_page);
startActivity(intent);
}
圖表標題是硬編碼用於測試目的。現在,來自新的活動的一些代碼(PDF瀏覽)「scroll_view.java」:
public class scroll_view extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_scroll_view);
Bundle extras = getIntent().getExtras();
String scroll_page = null;
if (extras != null) {
scroll_page = extras.getString("extra_scroll_page");
}
int currentPage = 1;
ImageView imageView = (ImageView) findViewById(R.id.imageView);
Bitmap bitmap = Bitmap.createBitmap(500,500, Bitmap.Config.ARGB_4444);
try {
File file = new File(getFilesDir(), scroll_page);
PdfRenderer renderer = new PdfRenderer(ParcelFileDescriptor.open(file,ParcelFileDescriptor.MODE_READ_ONLY));
if(currentPage < 0) {
currentPage = 0;
} else if (currentPage > renderer.getPageCount()) {
currentPage = renderer.getPageCount() - 1;
}
renderer.openPage(currentPage).render(bitmap, new Rect(0, 0, 500, 500), new Matrix(),PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);
imageView.setImageBitmap(bitmap);
imageView.invalidate();
} catch (IOException e) {
e.printStackTrace();
}
這是使用很多的一個嘗試已經發布使用PdfRenderer其參考答案。我從這個例子中得到的是新的活動(pdf視圖)黑屏。我希望2015年會帶來新的答案。請幫忙。
Stack Overflow是編程問題。你的問題是什麼? – CommonsWare
如果您將閱讀帖子的標題,我無法獲得pdf加載並在scroll_view活動中查看。我分享的例子並沒有達到這個目的。我不知道爲什麼。 –
我沒看過帖子的標題。帖子的標題也不是問題。除此之外,您是否從異常處理程序中獲取LogCat中的任何堆棧跟蹤? – CommonsWare