所以我有了这个界面:

public interface Utils{
    static final Typeface FONT = Typeface.createFromAsset(getAssets(), "fonts/font.ttf");;
}

我在getAssets()中有一个错误,它说getassets()方法对于类型utils是未定义的,为什么?请帮忙谢谢:)

最佳答案

Utils类没有名为getAssets()的方法。我假设你想使用androidContext类中的一个。这意味着您需要有一个Context对象来调用getAssets()。如果没有更多关于你的应用程序设计的细节,我无法帮你更多。
一个可能的解决方案是创建一个Activity子类,它是所有其他活动的扩展。您还需要遵守活动生命周期:

public abstract FontActivity extends Activity {

    private Typeface font;

    @Override
    public onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        font = Typeface.createFromAsset(getAssets(), "fonts/font.ttf");
    }

}

现在扩展FontActivity而不是Activity

关于android - 如何在接口(interface)类中初始化TypeFace,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21821225/

10-09 06:45