मैं छवि दृश्य को विस्तारित करके एक कस्टम छवि दृश्य बनाता हूं जो स्क्रीन पर कुछ पाठ खींचता है, हालांकि मुझे एमुलेटर स्क्रीन में चित्रित कुछ भी दिखाई नहीं देता है, लेकिन लॉग संदेश और प्रिंटलन्स लॉग कंसोल में मुद्रित होते हैं । क्या मैं कुछ नहीं कर रहा हूँ?कस्टम छवि दृश्य बनाना
यह मेरा गतिविधि
public class HelloAndroidActivity extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// setContentView(R.layout.main);
CustomImageView myView = new CustomImageView(getApplicationContext());
System.out.println("Setting the view");
myView.invalidate();
setContentView(myView);
System.out.println("Calling invalidate");
}
}
है यह मेरा CustomImageView
public class CustomImageView extends ImageView
{
/**
* @param context
*/
public CustomImageView(Context context)
{
super(context);
// TODO Auto-generated constructor stub
setBackgroundColor(0xFFFFFF);
}
/**
* @param context
* @param attrs
*/
public CustomImageView(Context context, AttributeSet attrs)
{
super(context, attrs);
// TODO Auto-generated constructor stub
}
/**
* @param context
* @param attrs
* @param defStyle
*/
public CustomImageView(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
// TODO Auto-generated constructor stub
}
@Override
protected void onDraw(Canvas canvas)
{
// TODO Auto-generated method stub
super.onDraw(canvas);
System.out.println("Painting content");
Paint paint = new Paint(Paint.LINEAR_TEXT_FLAG);
paint.setColor(0x0);
paint.setTextSize(12.0F);
System.out.println("Drawing text");
canvas.drawText("Hello World in custom view", 100, 100, paint);
}
@Override
public boolean onTouchEvent(MotionEvent event)
{
// TODO Auto-generated method stub
Log.d("Hello Android", "Got a touch event: " + event.getAction());
return super.onTouchEvent(event);
}
}
onTouchEvent में भी लॉग संदेश() प्रिंट हो जाती है, लेकिन कुछ भी चित्रित है।
यह मेरा main.xml लेआउट
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/AbsoluteLayout">
</AbsoluteLayout>
कोई यह – Ram
@Ram काम नहीं करता है - केवल समस्या रंग मान था। हमें कलर क्लास का उपयोग रंगीन मानों के लिए करना चाहिए। – bhatt4982
या प्रारूप 0xAARRGGBB प्रारूप में रंग हेक्सा मान का उपयोग करें। सफेद = 0xFFFFFFFF और काला = 0xFF000000 – bhatt4982