You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
make BitmapDrawable functional
This commit is contained in:
@@ -19,7 +19,7 @@ package android.content.res;
|
|||||||
import android.content.pm.ActivityInfo;
|
import android.content.pm.ActivityInfo;
|
||||||
import android.icu.text.PluralRules;
|
import android.icu.text.PluralRules;
|
||||||
// import android.graphics.Movie;
|
// import android.graphics.Movie;
|
||||||
// import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
// import android.graphics.drawable.ColorDrawable;
|
// import android.graphics.drawable.ColorDrawable;
|
||||||
// import android.graphics.drawable.Drawable.ConstantState;
|
// import android.graphics.drawable.Drawable.ConstantState;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
@@ -42,9 +42,6 @@ import org.xmlpull.v1.XmlPullParser;
|
|||||||
import org.xmlpull.v1.XmlPullParserException;
|
import org.xmlpull.v1.XmlPullParserException;
|
||||||
|
|
||||||
class Movie {}
|
class Movie {}
|
||||||
class Drawable {
|
|
||||||
class ConstantState {}
|
|
||||||
}
|
|
||||||
class ColorDrawable {}
|
class ColorDrawable {}
|
||||||
|
|
||||||
class ConstantState {}
|
class ConstantState {}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
package android.content.res;
|
package android.content.res;
|
||||||
|
|
||||||
import android.content.pm.ActivityInfo;
|
import android.content.pm.ActivityInfo;
|
||||||
// import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.util.DisplayMetrics;
|
import android.util.DisplayMetrics;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|||||||
@@ -2,7 +2,21 @@ package android.graphics.drawable;
|
|||||||
|
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
|
import android.graphics.Canvas;
|
||||||
|
import android.graphics.Rect;
|
||||||
|
import android.graphics.RectF;
|
||||||
|
|
||||||
public class BitmapDrawable extends Drawable {
|
public class BitmapDrawable extends Drawable {
|
||||||
public BitmapDrawable(Resources res, Bitmap bitmap) {}
|
|
||||||
|
private Bitmap bitmap;
|
||||||
|
|
||||||
|
public BitmapDrawable(Resources res, Bitmap bitmap) {
|
||||||
|
this.bitmap = bitmap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void draw(Canvas canvas) {
|
||||||
|
canvas.drawBitmap(bitmap, new Rect(0, 0, bitmap.getWidth(), bitmap.getWidth()), new RectF(getBounds()), null);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,33 @@
|
|||||||
package android.graphics.drawable;
|
package android.graphics.drawable;
|
||||||
|
|
||||||
public class Drawable {
|
import android.graphics.Canvas;
|
||||||
|
import android.graphics.Rect;
|
||||||
|
|
||||||
|
public abstract class Drawable {
|
||||||
|
|
||||||
|
private Rect mBounds = new Rect();
|
||||||
|
|
||||||
|
public int getChangingConfigurations() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChangingConfigurations(int bitmap) {}
|
||||||
|
|
||||||
|
public ConstantState getConstantState() {
|
||||||
|
return new ConstantState();
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ConstantState {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBounds(int left, int top, int right, int bottom) {
|
||||||
|
mBounds.set(left, top, right, bottom);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final Rect getBounds() {
|
||||||
|
return mBounds;
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract void draw(Canvas canvas);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,15 +3,21 @@ package android.widget;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.BitmapFactory;
|
import android.graphics.BitmapFactory;
|
||||||
|
import android.graphics.drawable.BitmapDrawable;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
public class ImageView extends View {
|
public class ImageView extends View {
|
||||||
|
|
||||||
|
private Bitmap bitmap;
|
||||||
|
|
||||||
public ImageView(AttributeSet attrs) {
|
public ImageView(AttributeSet attrs) {
|
||||||
super(attrs);
|
super(attrs);
|
||||||
|
|
||||||
native_constructor(attrs);
|
native_constructor(attrs);
|
||||||
int resource = attrs.getAttributeResourceValue("http://schemas.android.com/apk/res/android", "src", 0);
|
int resource = attrs.getAttributeResourceValue("http://schemas.android.com/apk/res/android", "src", 0);
|
||||||
|
if (resource != 0)
|
||||||
setImageResource(resource);
|
setImageResource(resource);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -34,13 +40,17 @@ public class ImageView extends View {
|
|||||||
public /*native*/ void setImageResource(final int resid) {
|
public /*native*/ void setImageResource(final int resid) {
|
||||||
if (Context.this_application.getResources().getString(resid).endsWith(".xml"))
|
if (Context.this_application.getResources().getString(resid).endsWith(".xml"))
|
||||||
return;
|
return;
|
||||||
Bitmap bitmap = BitmapFactory.decodeResource(Context.this_application.getResources(), resid);
|
bitmap = BitmapFactory.decodeResource(Context.this_application.getResources(), resid);
|
||||||
native_setPixbuf(bitmap.pixbuf);
|
native_setPixbuf(bitmap.pixbuf);
|
||||||
}
|
}
|
||||||
public void setAdjustViewBounds(boolean adjustViewBounds) {}
|
public void setAdjustViewBounds(boolean adjustViewBounds) {}
|
||||||
|
|
||||||
public void setScaleType(ScaleType scaleType) {}
|
public void setScaleType(ScaleType scaleType) {}
|
||||||
|
|
||||||
|
public Drawable getDrawable() {
|
||||||
|
return new BitmapDrawable(getContext().getResources(), bitmap);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Options for scaling the bounds of an image to the bounds of this view.
|
* Options for scaling the bounds of an image to the bounds of this view.
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user