如何在Android屏幕的特定区域打开pdf文件

时间:2014-03-25 11:02:20

标签: android pdf webview filereader

我有要求,在我的屏幕标题标签上,在底部     屏幕上有一个按钮。我想在此标签之间显示PDF文件     和按钮我将如何实现这个?当我试图打开PDF时,它正在充分利用     屏幕空间。

      File file = new File(getFilesDir(), "mypdf.pdf");


        try {
            fis = new FileInputStream(file);
        } catch (FileNotFoundException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        //System.out.println(file.exists() + "!!");
        //InputStream in = resource.openStream();
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        byte[] buf = new byte[1024];
        try {
            for (int readNum; (readNum = fis.read(buf)) != -1;) {
                bos.write(buf, 0, readNum); //no doubt here is 0
                //Writes len bytes from the specified byte array starting at offset off to this byte array output stream.
                System.out.println("read " + readNum + " bytes,");
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        byte[] bytes = bos.toByteArray();

        //below is the different part
        File someFile = new File("java2.pdf");
        try {
            FileOutputStream fos = new FileOutputStream(someFile);
            fos.write(bytes);
            fos.flush();
            fos.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(
                Uri.parse("file://" + getFilesDir() + "/java2.pdf"),
                "application/pdf");

        startActivity(intent);

1 个答案:

答案 0 :(得分:0)

我没有尝试过,但你应该尝试在想要显示PDF的Ativity中使用Fragments。来自原始网站:

Fragments

  

Fragment表示Activity中的行为或用户界面的一部分。您可以在单个活动中组合多个片段以构建多窗格UI,并在多个活动中重用片段。

在按钮和标题之间使用单个片段并在其上打开PDF。也许它会帮助你