मुझे this लिंक मिला जो बताता है कि मैं अपने ImageButton
पर चमक प्रभाव कैसे बना सकता हूं। इसलिए जब भी उपयोगकर्ता ImageButton
दबाता है onTouchEvent()
फ़ंक्शन को कॉल किया जाता है और वहां मैं setImageBitmap()
फ़ंक्शन को कॉल करता हूं। समस्या यह है कि यह फ़ंक्शन (setImageBitmap()
) का कोई प्रभाव नहीं पड़ता है।कस्टम इमेजबटन पर setImageBitmap का कोई प्रभाव क्यों नहीं है?
क्या काम करता है:
1) अब तक मैं
// Pen.java
public class Pen extends ImageButton {
public Pen(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
System.out.println("Now I am setting Pen");
return true;
}
}
गतिविधि के अंदर
फिर नीचे के रूप में ImageButton
बढ़ाया मैं बनाने Pen
(कस्टम ImageButton
) उदाहरण, setGlow()
को परिभाषित करने और Pen
के कहने से setImageBitmap()
कहते हैं।
//MainActivity.java
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Pen myImgbutton;
myImgbutton = (Pen) findViewById(R.id.pen);
myImgbutton.setImageBitmap(setGlow(R.drawable.pen));
}
}
public Bitmap setGlow(int resourceId) {
......
}
क्या काम नहीं करता:
1) ऊपर (एंड्रॉयड में एक ImageButton विस्तार) के रूप में सभी एक ही, लेकिन इस बार मैं setImageBitmap समारोह बोल रहा हूँ अंदर से टचएवेंट()। मैं आप के रूप में परियोजना का निर्माण किया
.....
<com.example.testsetimagebmp.Pen
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/pen"
android:background="@drawable/pen" />
....
अंत में MainActivity में
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// ....
}
'ऑन टचवेन्ट' कहा जाता है? – shhp
@shhp हां यह – pokche
है यदि आप 'MainActivity' में 'setImageBitmap' को कॉल करते हैं, तो इसका मतलब है कि यह काम करता है। हालांकि यह 'onTouchEvent' में काम नहीं करता है? – shhp