Soru & Cevap

canvasda çizilen resmi duvar kağıdı yapma : appinventor

18.10.2015 - 12:37

canvasda çizilen resmi duvar kağıdı yapabilirmiyiz uygulama içinde

yani bir butona  basılacak o an canvasa çizilen resim duvar kağıdı olacak

32 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-2681-1428446445.jpg
volkankilic
21.10.2015 - 05:35

Merhaba Yusuf,

Canvas'ı nasıl kaydedeceğin konusunda ilgili makaleye göz atabilrsin ancak arkaplan resmi olarak ayarlamak için bir Activity Starter olayıyla yapabileceğini düşünüyorum.

Profile picture for user nnnurisezgin
nnnurisezgin
18.10.2015 - 10:13
//Canvas için oluşturulmuş customview

public class CustomView extends View{

    private Context mContext;
    private Bitmap bitmap;
    private Paint mPaint;

    public CustomView(Context context) {
        super(context);
        init();
    }

    public CustomView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public CustomView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    private void init(){
        mContext = getContext();
        mPaint = new Paint();
        mPaint.setColor(Color.RED);
        mPaint.setAntiAlias(true);
        mPaint.setStyle(Paint.Style.FILL_AND_STROKE);

        setDrawingCacheEnabled(true);
        setDrawingCacheQuality(DRAWING_CACHE_QUALITY_AUTO);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        canvas.drawColor(Color.GRAY);
        canvas.drawLine(0, 0, 200, 200, mPaint);
        canvas.drawLine(200, 200, 100, 400, mPaint);
    }
}


// **********************

// Activity içerisinde ise butona basılma aksiyonu ile yapılacak işlem

WallpaperManager wm = WallpaperManager.getInstance(MainActivity.this);
               try {
                    wm.setBitmap(canvasView.getDrawingCache());
                } catch (IOException e) {
                    e.printStackTrace();
                }

 

Yukarıda basi olarak CustomView ve Activity içerisinde yapılması gereken işlemler yer almaktadır.

Manifest içerisine de permission tanımı yapmamız gerekiyor. 
<uses-permission android:name="android.permission.SET_WALLPAPER"/>