2015-10-18 13 views
7

Tôi muốn sử dụng phương pháp setForeground để hiển thị biểu tượng "phát" ở trung tâm của ImageView để cho biết người dùng sẽ phát video nếu họ nhấn.Không thể sử dụng phương pháp setForeground trên ImageView

Hiện nay tôi đang gặp lỗi này mà tôi không thể giải quyết:

enter image description here

Mặc dù các tài liệu nói phương pháp này nên có sẵn từ API 1:

enter image description here

Tôi nhắm mục tiêu và biên dịch API 23 bằng công cụ xây dựng phiên bản 23.0.1. Tôi đang nhắm mục tiêu API tối thiểu 16.

Trả lời

20

Đó là a documentation bug. setForeground() tồn tại trên FrameLayout từ Cấp API 1; nó chỉ là trên View như API Cấp 23.

+0

Được rồi cảm ơn, bạn có bất kỳ gợi ý về cách để có được biểu tượng chơi sau đó trong trường hợp của tôi? Tôi hiện đang nghĩ rằng việc hợp nhất thủ công hình ảnh thông thường và hình ảnh nền trước có thể là lựa chọn duy nhất của tôi, nhưng có lẽ tôi đang thiếu một thứ gì đó. – Saragis

+3

@Saragis: Tắt dải, có "hình ảnh thông thường" là hình nền của 'ImageView' và có biểu tượng phát là hình ảnh thực tế cho 'ImageView' – CommonsWare

+0

câu trả lời này không chính xác. java.lang.NoSuchMethodError: android.widget.ImageView.setForeground tại kitkat (19). –

0

Bạn có thể thay đổi

minSdkVersion 16 

với

minSdkVersion 23 

hoặc import android.support.annotation.RequiresApi;
đến lớp học của bạn và tuyên bố này

@RequiresApi(api = Build.VERSION_CODES.M) 

đến hoạt động yo u sử dụng phương pháp setForground trong đó.

Lưu ý rằng M trong @RequiresApi(api = Build.VERSION_CODES.M) là viết tắt của API 23

và bạn có thể sử dụng mỗi một trong các mục dưới đây mà mỗi người đứng một API cụ thể thay vì M

BASE 1
BASE_1_1 2
CUPCAKE 3
DONUT 4
ECLAIR 5
ECLAIR_0_1 6
ECLAIR_MR1 7
FROYO 8
GINGERBREAD 9
GINGERBREAD_MR1 10
HONEYCOMB 11
HONEYCOMB_MR1 12
HONEYCOMB_MR2 13 ICE_CREAM_SANDWICH 14
ICE_CREAM_SANDWICH_MR1 15
JELLY_BEAN 16
JELLY_BEAN_MR1 17
JELLY_BEAN_MR2 18
KITKAT 19
KITKAT_WATCH 20
LOLLIPOP 21 LOLLIPOP_MR1 22
M 23
N 24
N_MR1 25
O 26
CUR_DEVELOPMENT 10000

Các vấn đề liên quan