2015-10-18 9 views
7

पर सेटऑर्गग्राउंड विधि का उपयोग नहीं कर सकता है, मैं अपने छवि दृश्य के केंद्र में "प्ले" आइकन दिखाने के लिए सेटऑनग्राउंड विधि का उपयोग करना चाहता हूं ताकि उपयोगकर्ता को यह इंगित किया जा सके कि कोई वीडियो चलाएगा यदि वे इसे दबाएंगे।ImageView

वर्तमान में मैं इस त्रुटि जो मैं का समाधान नहीं कर रही:

enter image description here

हालांकि प्रलेखन कहते विधि एपीआई 1 के बाद से उपलब्ध होना चाहिए:

enter image description here

मैं बिल्डिंग संस्करण संस्करण 23.0.1 के साथ एपीआई 23 के खिलाफ लक्ष्यीकरण और संकलन। मैं मिनी एपीआई 16 को लक्षित कर रहा हूं।

उत्तर

20

यह a documentation bug है। setForeground() एपीआई स्तर 1 से FrameLayout पर अस्तित्व में था; यह एपीआई स्तर के रूप में केवल View पर 23.

+0

ठीक है धन्यवाद के बजाय एक विशिष्ट एपीआई के लिए हर एक स्टैंड, आप की क्या ज़रूरत है कि मेरे मामले में प्ले आइकन कैसे प्राप्त करें इस पर कोई सुझाव? मैं वर्तमान में नियमित छवि को मैन्युअल रूप से विलय करने की सोच रहा हूं और अग्रभूमि छवि मेरी एकमात्र पसंद हो सकती है, लेकिन शायद मुझे कुछ याद आ रहा है। – Saragis

+3

@ सारागिस: कफ बंद करें, "छवि छवि" की पृष्ठभूमि छवि "नियमित छवि" हो, और प्ले आइकन 'छवि दृश्य' – CommonsWare

+0

के लिए वास्तविक छवि हो, यह उत्तर थोड़ा सही नहीं है। java.lang.No.SuchMethodError: kitkat पर android.widget.ImageView.setForeground (1 9)। –

0

आप या तो

minSdkVersion 16 

minSdkVersion 23 

या import android.support.annotation.RequiresApi;
को अपनी कक्षा में और इस कथन से

बदल सकते हैं

@RequiresApi(api = Build.VERSION_CODES.M) 
गतिविधि के लिए

यो आपने setForground विधि का उपयोग किया था।

नोट @RequiresApi(api = Build.VERSION_CODES.M) में M एपीआई 23

के लिए खड़ा है और आप नीचे दिए गए आइटम में से हर एक का उपयोग कर सकते है कि 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