Xamarin安卓视图pdf格式使用Mupdf
问题描述:
我想为我的Xamarin Android项目使用MuPDF阅读器。 我试图在我的相对布局Xamarin安卓视图pdf格式使用Mupdf
这里查看PDF是我相对布局代码
<RelativeLayout
android:id="@+id/mupdf_wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</RelativeLayout>
,这里是主要胡亚蓉
SetContentView(Resource.Layout.Main);
RelativeLayout mupdfWrapper = FindViewById<RelativeLayout>(Resource.Id.mupdf_wrapper);
MuPDFCore core = new MuPDFCore(this, "test.pdf");
MuPDFReaderView reader = new MuPDFReaderView(this);
reader.Adapter = new MuPDFPageAdapter(this, new FilePicker.IFilePickerSupport() , core);
mupdfWrapper.AddView(reader);
mupdfWrapper.AddView(reader);
但我在这里得到错误
“无法创建抽象类或接口的文件”File picker .iflepickersupport“
任何人都可以帮助我解决这个问题,请。
在此先感谢。
答
如果你没有使用FilePicker.IFilePickerSupport(的),然后将其设置为null 像
reader.Adapter = new MuPDFPageAdapter(this, null , core);
和第二件事情是,你的代码是非常有帮助的,我有你所面对的问题,而是你的问题是我在我的项目中的解决方案,所以谢谢你。 并尝试它会工作,我在我的代码中使用它,它为我工作。 最后这件事是对我的英语感到抱歉。
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
File fileToDisplay = (File)fileFromAsset(this, "test.pdf");
fileToDisplay.SetWritable(true);
RelativeLayout mupdfWrapper = FindViewById<RelativeLayout>(Resource.Id.mupdf_wrapper);
MuPDFCore core = new MuPDFCore(this, fileToDisplay.AbsolutePath);
MuPDFReaderView reader = new MuPDFReaderView(this);
MuPDFPageAdapter adapter = new MuPDFPageAdapter(this, null, core);
reader.SetAdapter(adapter);
mupdfWrapper.AddView(reader);
}
private object fileFromAsset(Context context, string assetName)
{
File outFile = new File(context.CacheDir, assetName);
copy(context.Assets.Open(assetName), outFile);
return outFile;
}
private void copy(Stream inputStream, File output)
{
OutputStream outputStream = null;
var bufferedInputStream = new BufferedInputStream(inputStream);
try
{
outputStream = new FileOutputStream(output);
int read = 0;
byte[] bytes = new byte[1024];
while ((read = bufferedInputStream.Read(bytes)) != -1)
{
outputStream.Write(bytes, 0, read);
}
}
finally
{
try
{
if (inputStream != null)
{
inputStream.Close();
inputStream.Dispose();
inputStream = null;
}
}
finally
{
if (outputStream != null)
{
outputStream.Close();
outputStream.Dispose();
outputStream = null;
}
}
}
}
*你得到了什么*错误? – JosephH
谢谢,在这行reader.Adapter = new MuPDFPageAdapter(this,new FilePicker.IFilePickerSupport(),core);它说“不能创建一个抽象类或接口istance”文件选择器.iflepickersupport'“ –