【发布时间】:2020-12-31 05:18:42
【问题描述】:
我正在尝试在我的 Xamarin.android 应用程序中使用字体文件。我想在 itext7 库中使用它。但是我的 setfont 函数出现异常,说它是空的,尽管我已将我的字体文件添加到集合中,所以我尝试使用 file.exist 函数检查我的字体文件是否存在。我试过这段代码:
a = File.Exists("C:/Windows/Fonts/Arial.ttf");
if (a==true)
{
Android.App.AlertDialog.Builder alert = new Android.App.AlertDialog.Builder(this);
alert.SetTitle("exist");
alert.SetMessage("exists!");
alert.SetPositiveButton("Okay", (senderAlert, args) =>
{
alert.Dispose();
});
_dialog = alert.Create();
_dialog.Show();
}
else
{
Android.App.AlertDialog.Builder alert = new Android.App.AlertDialog.Builder(this);
alert.SetTitle("exist");
alert.SetMessage("doesn't exist!");
alert.SetPositiveButton("Okay", (senderAlert, args) =>
{
alert.Dispose();
});
_dialog = alert.Create();
_dialog.Show();
}
结果是该文件不存在。尽管物理存在于上述路径中,并且它是在系统中找到的字体文件,但它不是我下载的文件。查了权限发现目录字体的权限对于里面的所有文件都是只读的。我也尝试使用其他字体。我不明白为什么它返回错误。提前致谢
【问题讨论】:
-
当您将应用程序部署到移动设备或模拟器时,您将无法访问您的开发机器及其文件系统。
-
哦对了,所以我必须像控制台应用一样使用才能检查它对吗?
-
好吧,您可以将结果与控制台应用程序进行比较,但如果您想使用字体,它需要成为您项目的一部分,作为某种资源,因此当您建造。我没有任何使用 Xamarin 的经验,但我确信有办法。
标签: c# file xamarin.android