2012-04-08 7 views
2

Ich habe eine Klasse namens CommonCode, die für die Lagerung alle Methoden verwendet wird, die ich häufig brauche.Android GetAssets in Common Klasse gibt "Die Methode getAsssets() ist nicht definiert für den Typ Kontext" Fehler

Eine dieser Methoden besteht darin, einen Toast mit einem benutzerdefinierten Layout zu erstellen. Ich möchte dem TextView in diesem Toast eine benutzerdefinierte Schriftart geben, damit ich ein TypeFace benutze. Wenn Sie versuchen, die benutzerdefinierte Schriftart aus meinem Ordner Assets zu erhalten, geht es schief.

Ich bekomme das Problem "Die Methode getAsssets() ist nicht definiert für den Typ Kontext".

Hier ist mein Code: die CommonCode Klasse

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(); 
} 

} 

Danke Jungs!

Antwort

3

Verwendung getAssets() statt getAsssets(),:

Typeface type= Typeface.createFromAsset(context.getAssets(), "fonts/aircruiser.ttf"); 
text.setTypeface(type); 
+0

stumm mich, danke! –

Verwandte Themen