2011-11-17 6 views
6

Tôi đang cố gắng nhập phông chữ. Đã tìm một số hướng dẫn trực tuyến và sử dụng hướng dẫn. Cho đến nay tôi đã nhập phông chữ vào thư mục nội dung. Đây là mã mà tôi đang sử dụng để khai báo kiểu phông chữ của tôi.Ngoại lệ con trỏ rỗng trong khi nhập phông chữ trong android

Typeface localTypeface1 = Typeface.createFromAsset(getAssets(), "arial.ttf"); 

Tôi tiếp tục nhận ngoại lệ con trỏ null khi tôi gọi nó.

TextView txtTab = new TextView(this); 
txtTab.setTypeface(localTypeface1); 

Điều gì có thể là vấn đề? Đây là lỗi chính xác trong logcat.

11-17 13:10:41.024: E/AndroidRuntime(2262): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{se.copernicus.activity/se.copernicus.activity.Secondactivity}: java.lang.NullPointerException 
11-17 13:10:41.024: E/AndroidRuntime(2262): at android.content.ContextWrapper.getAssets(ContextWrapper.java:74) 

Đây là dòng 74

Typeface localTypeface1 = Typeface.createFromAsset(getAssets(), "arial.ttf"); 

enter image description here

+0

Lưu ý: Tôi đã thử nhập từ "phông chữ/arial.ttf" đầu tiên vì nó không hoạt động Tôi đã đổi thành "arial.ttf" – Vinoth

Trả lời

2

Điều tôi thấy là Android không thể đọc một số tệp ttf. (có thể tệp bị hỏng?)

Tôi không thể sử dụng tệp ttf trong ứng dụng của mình nhưng một ứng dụng khác trong điện thoại của tôi có thể đọc cùng một tệp ttf. (Tôi đã sử dụng cùng một mã như trên, đã cố gắng dọn dẹp, thay thế các thư mục khác có vẻ không hoạt động)

Đã kết thúc bằng cách sử dụng một tệp phông chữ hoàn toàn khác. (Không có vấn đề với tệp này bằng cùng mã!)

1

Bạn đã thử di chuyển phông chữ của bạn trực tiếp vào tài sản? (Không phải trong thư mục phông chữ), và thoát khỏi thư mục phông chữ?

+0

Có. Tôi đã thử đường. Nếu bạn có thể thấy trong hình ảnh tôi đã đăng, có hai mục nhập cho arial.ttf. Một là từ các tài sản/phông chữ/arial.ttf thư mục và khác là tài sản/arial.ttf. – Vinoth

+0

Ah ok, chế độ xem phân cấp không phải lúc nào cũng rõ ràng :) Nhưng bạn đã thử xoá hoàn toàn các phông chữ của thư mục chưa? Nó có thể gây rối mọi thứ vào thời điểm tải – Guillaume

+0

sẽ làm điều đó và thử :) – Vinoth

1

Hãy thử vệ sinh (Dự án -> Làm sạch ...) dự án của bạn