我使用xamarin.android开发应用程序,我尝试使用代码自定义字体:
Typeface myfont = Typeface.CreateFromAsset (Context.Assets, "fonts/KhmerOS.ttf");
但是当我建立时,它的错误如下所示:
Error CS0120: An object reference is required for the non-static field, method, or property 'Android.Content.Context.Assets.get' (CS0120)
请帮助我,
最好的问候 Buntha
答案 0 :(得分:4)
这可能是迟到的回复,但可能会帮助有相同问题的人。将BuilAction设置为Android Asset以获取字体文件。 (右键单击fontfile-> BuildAction选择AndroidAsset)
答案 1 :(得分:2)
试试这个:
Typeface tf = Typeface.CreateFromAsset(Application.Context.Assets, "fonts/KhmerOS.ttf");
答案 2 :(得分:1)
试试这个:)
[assembly: ExportRenderer(typeof(Label), typeof(MyLabelRenderer))]
namespace App3.Droid.Debug
{
class MyLabelRenderer : LabelRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Label> e)
{
base.OnElementChanged(e);
var label = (TextView)Control;
Typeface font = Typeface.CreateFromAsset(Forms.Context.Assets, "your font name.otf/ttf");
label.Typeface = font;
}
}
}
注意:将字体放入资源并设置属性“在AndroidAsset上构建操作并复制到输出目录以便始终复制”
答案 3 :(得分:0)
将代码编辑为
Typeface custom_font = Typeface.createFromAsset(getAssets(), "fonts/font name.ttf");
tx.setTypeface(custom_font);