我正在尝试使用Typeface导入自定义加载的字体。为此,我必须访问我的资产。当我通过扩展Activity的MainActivity类运行以下代码时,它不会抛出错误。
public class MainActivity extends Activity {
Typeface font = Typeface.createFromAsset(getAssets(), "fonts/EuphoriaScript.otf");
}
当我通过我的View类运行它时,它会在getAssets()方法上抛出异常。我猜这是因为它需要以不同的方式访问。我怎么能这样做?
由于
答案 0 :(得分:1)
AssetManager附加到您的应用程序包。因此,只需要Context即可访问它。每个视图都包含对Context的引用,因此从View类中获取AssetManger只需执行:
AssetManager assetManger = getContext().getAssets();