2

我有一个名为 CommonCode 的类,用于存储我经常需要的所有方法。

其中一种方法是使用自定义布局创建吐司。我想给那个 toast 中的 TextView 一个自定义字体,所以我使用 TypeFace。当试图从我的资产文件夹中获取自定义字体时,它出错了。

我收到问题“方法 getAsssets() 未为 Context 类型定义”。

这是我的代码:CommonCode 类

public class CommonCode {

public static void showToast(String toastString, Context context, View view) {
    LayoutInflater inflater = LayoutInflater.from(context);
    View layout = inflater.inflate(R.layout.toast_layout, (ViewGroup) view);

    ImageView image = (ImageView) layout.findViewById(R.id.toastImage);
    image.setImageResource(R.drawable.android);

    TextView text = (TextView) layout.findViewById(R.id.toastText);

    Typeface type = Typeface.createFromFile(context.getAsssets(), "fonts/aircruiser.ttf"); 

    text.setTypeface(type);
    text.setText(toastString);

    Toast toast = new Toast(context);
    toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
    toast.setDuration(Toast.LENGTH_SHORT);
    toast.setView(layout);
    toast.show(); 
}

}

多谢你们!

4

1 回答 1

3

使用getAssets()而不是getAsssets(),

Typeface type= Typeface.createFromAsset(context.getAssets(), "fonts/aircruiser.ttf");  
text.setTypeface(type);
于 2012-04-08T08:35:11.710 回答