I seem to be missing a key concept here. I want to be able to put a
white square on top of an image. Seems simple right? I can't figure
it out.
Currently, I have have an XML file describing my layout.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/LinearLayout01"
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:layout_width="fill_parent">
<TextView
android:layout_marginTop="5dip"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:id="@+id/TextView01"
android:textSize="18sp"
android:text="@string/title"
android:layout_width="wrap_content">
</TextView>
<TextView
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginTop="0dip"
android:layout_gravity="center"
android:id="@+id/TextView02"
android:textSize="15sp"
android:text="@string/description"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
</TextView>
<ImageView
android:id="@+id/profilePic"
android:layout_marginTop="15dip"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</ImageView>
</LinearLayout>
</LinearLayout>
Next, my Activity calls a method called showImage(). Using the XML,
this method draws the picture taken with the camera along with some
text.
public void showImage(Drawable d)
{
CropView myCropView = new CropView(this);
ImageView myImageView = new ImageView(this);
setContentView(R.layout.main);
myImageView = (ImageView)findViewById(R.id.profilePic);
myImageView.setImageDrawable(d);
myImageView.setScaleType(ImageView.ScaleType.FIT_START);
setContentView(myCropView);
}
Then I have a class CropView that extends ImageView that draws a
square in the middle of the screen:
public class CropView extends ImageView {
public CropView(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Log.d("Marty", "ON DRAW");
Paint background = new Paint();
background.setColor(Color.RED);
Paint box = new Paint();
box.setColor(Color.WHITE);
box.setStyle(Paint.Style.STROKE);
int boxWidth = 100;
int topX = (getWidth()-boxWidth)/2;
int topY = (getHeight() - boxWidth)/2;
canvas.drawRect(topX,topY, topX+boxWidth,
topY+boxWidth, box);
}
}
As you can see, I have two calls to setContentView. The second call
overlaps the other. How do I get one View to draw on top of my
Layout? I really appreciate any help you could give.
Marty
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en