Pdf 想将Java类转换为C类Xamarin Android吗
我曾在原生android中将HTML文件转换为PDF文件。正如我所预料的那样。当我想切换到Xamarin.Android时,我无法转换回调Pdf 想将Java类转换为C类Xamarin Android吗,pdf,xamarin,xamarin.android,Pdf,Xamarin,Xamarin.android,我曾在原生android中将HTML文件转换为PDF文件。正如我所预料的那样。当我想切换到Xamarin.Android时,我无法转换回调 printAdapter.onLayout(null, printAttributes, null, new PrintDocumentAdapter.LayoutResultCallback() { @Override public void onLayoutFinished(PrintDocumentInfo info, boolean
printAdapter.onLayout(null, printAttributes, null, new PrintDocumentAdapter.LayoutResultCallback() {
@Override
public void onLayoutFinished(PrintDocumentInfo info, boolean changed) {
Log.e("Finish", "onLayoutFinished" );
ParcelFileDescriptor fileDescriptor = getOutputFile(path, fileName);
if (null == fileDescriptor) {
if (mListener != null) {
mListener.onError();
}
return;
}
printAdapter.onWrite(new PageRange[]{PageRange.ALL_PAGES}, fileDescriptor, new CancellationSignal(), new PrintDocumentAdapter.WriteResultCallback() {
@Override
public void onWriteFinished(PageRange[] pages) {
Log.e("Finish", "onWriteFinished" );
super.onWriteFinished(pages);
if (mListener != null) {
mListener.onWriteFinished((new File(path, fileName)).getAbsolutePath());
}
}
});
}
}, null);
以上代码是我用Java在本机Android中完成的
printAdapter.onWrite(new PageRange[]{PageRange.ALL_PAGES}, fileDescriptor, new CancellationSignal(), new PrintDocumentAdapter.WriteResultCallback() {
@Override
public void onWriteFinished(PageRange[] pages) {
Log.e("Finish", "onWriteFinished" );
super.onWriteFinished(pages);
if (mListener != null) {
mListener.onWriteFinished((new File(path, fileName)).getAbsolutePath());
}
}
});
WriteResultCallback当我想在Xamarin.Android中调用此回调时。这表明需要创建构造函数。因此,我创建了一个类,并用构造函数在新类中继承WriteResultCallback
public class MyWriteResultCallbackt : WriteResultCallback
{
public MyWriteResultCallbackt(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer)
{
}
public override void OnWriteFinished(PageRange[] pages)
{
base.OnWriteFinished(pages);
}
}
之后,当我编译代码时,我得到了编译错误
/Users/apple/Projects/Sample/Sample/obj/Debug/android/src/md5a4074a9abd9040c154db052535adf080/MyWriteResultCallbackt.java(8,8):
错误:错误:WriteResultCallback()在中不是公共的
WriteResultCallback;无法从外部程序包公共访问
类MyWriteResultCallbackt(示例)
有人能告诉我我是否在正确的轨道上,如果有办法在Xamarin.Android中进行文件转换(HTML到PDF)。请告诉我方法。你有没有尝试在当前类中编写
MyWriteResultCallbackt
。你可以显示示例项目的链接。是的,我在同一个类@JuniorJiang MSFTOkey中创建,这很奇怪。从错误日志中,回调不能在printAdapter
中使用。也许可以尝试在printAdapter中编写。@Pandiyan Muthu这里是源代码@JuniorJiang msft谢谢你的代码,我会检查它的@潘迪扬·穆图