相关疑难解决方法(0)

使用方法-canvas.drawBitmap(bitmap,src,dst,paint)

每次我使用这个代码都没有画出来.我需要在指定的矩形内绘制一个位图.

canvas.drawBitmap(MyBitmap, null, rectangle, null)
Run Code Online (Sandbox Code Playgroud)

我看过网上但找不到多少帮助.

graphics android bitmap android-canvas

23
推荐指数
2
解决办法
7万
查看次数

如何擦除Canvas上的先前绘图?

我有一张背景图片(地图),我需要在其上定期绘制你在这​​里的图标.我使用Canvas在地图上绘制图标.假设在单击按钮时触发绘制过程(请参阅下面的代码),如何删除上一个绘图?

private void displayUserPos(Point userPos) {
    Bitmap marker = BitmapFactory.decodeResource(getResources(), R.drawable.ic_yah);
    canvas.drawBitmap(marker, (float)userPos.getX(), (float)userPos.getY(), null);
    imgView.setImageBitmap(fmOverlay);
}
Run Code Online (Sandbox Code Playgroud)

android drawing canvas

22
推荐指数
3
解决办法
5万
查看次数

Android Canvas清晰透明

我试图从画布上"擦除".就像清理画布的非常简单的测试一样,我实现了以下内容:

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    canvas.drawColor(Color.argb(140, 0, 0, 0));
    canvas.drawColor(0, Mode.CLEAR);
}
Run Code Online (Sandbox Code Playgroud)

Color.argb(140, 0, 0, 0)设置此视图被绘制的视图以使其变暗. drawColor(0, Mode.CLEAR)使屏幕完全变黑,而不是删除之前应用的调光. 这个想法来自这里

android android-custom-view android-canvas

16
推荐指数
2
解决办法
2万
查看次数

Android Bitmap保存没有透明区域

我想保存没有透明区域的位图.

位图具有大的透明像素.

所以我想删除它

我怎样才能做到这一点?

我不能添加图片,所以用符号解释.

我不想裁剪功能.我希望使用过滤器

┌────────────────────────┐

│透明区域

│┌─────────

│裁剪此
└────────┘
└────────────────────────┘

android crop bitmap

11
推荐指数
3
解决办法
3451
查看次数

Android画布改变背景颜色

Android画布改变颜色

我有一个有两个视图的应用程序

    <com.myexample.ui.view.BackgroundView
        android:id="@+id/id_draw_canvas_classroom"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginBottom="3dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="3dp"
        android:layout_weight="1"
        android:background="#FFFFFFFF" />

    <com.myexample.ui.view.FrontView
        android:id="@+id/id_draw_canvas_user"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_marginBottom="3dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="3dp"
        android:layout_weight="1"
        android:background="#00000000" />
Run Code Online (Sandbox Code Playgroud)

这些视图是重叠的,并且在一段时间内我在背景视图中加载信息.在此期间,我想将FrontView设置为白色,然后(当背景完成加载时)变为透明.

在FrontView中,我有一个带位图的Canvas.正在工作,如果我想将背景设置为透明,我可以这样做

canvas.drawColor(0);
Run Code Online (Sandbox Code Playgroud)

将背景设置为白色

canvas.drawColor(-1);
Run Code Online (Sandbox Code Playgroud)

但我无法改变透明白色.

谢谢

android android-canvas

10
推荐指数
3
解决办法
3万
查看次数

如何在android中清除视图?

我已经在android中创建了一个简单的演示应用程序用于绘图,现在任何人都可以告诉我如何在一次单击中删除视图和清除屏幕.我尝试过如下:请帮我做... ....提前..!

main.java

package com.example.singletouch;

import com.example.singletouch.R.attr;

import android.os.Bundle;
import android.app.Activity;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class MainActivity extends Activity {
    ImageView pen;
     SingleTouchView mDrawView;

     ImageView remove;
    LinearLayout pens;

    LinearLayout pen1, pen2, pen3, pen4;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         mDrawView = (SingleTouchView) findViewById(R.id.myview);


        pen = (ImageView) findViewById(R.id.pen);
        pens = (LinearLayout) findViewById(R.id.linear);
        pens.setVisibility(View.GONE);
        pen1 = (LinearLayout) findViewById(R.id.pen1);
        pen2 = (LinearLayout) findViewById(R.id.pen2);
        pen3 …
Run Code Online (Sandbox Code Playgroud)

android android-canvas android-view

5
推荐指数
1
解决办法
2万
查看次数