Android绘图位图错误

Android绘图位图错误,android,Android,我正在使用drawBitmap来绘制精灵,它在我的手机上运行良好,但在我的平板电脑上却不行 精灵是一个32x32的网格 移动(安卓2.3.6) [浏览1.jpg] 平板电脑(安卓4.1.2) [浏览2.jpg] 代码 请帮忙 LOGCAT 02-27 14:05:12.203:D/AndroidRuntime(1226):>>>>>>>>AndroidRuntime开始com.android.internal.os.RuntimeInit尝试以下代码 final int color = 0x

我正在使用drawBitmap来绘制精灵,它在我的手机上运行良好,但在我的平板电脑上却不行

精灵是一个32x32的网格

移动(安卓2.3.6)

[浏览1.jpg]

平板电脑(安卓4.1.2)

[浏览2.jpg]

代码

请帮忙

LOGCAT

02-27 14:05:12.203:D/AndroidRuntime(1226):>>>>>>>>AndroidRuntime开始com.android.internal.os.RuntimeInit尝试以下代码

final int color = 0xff424242;    // put your color
final Paint paint = new Paint();
final Rect rect = new Rect(0,0,32,32);


paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawBitmap(bitmap, rect, rect, paint);
尝试将convertPixelsToDp(32,上下文)替换为32

/**
 * This method converts dp unit to equivalent pixels, depending on device density. 
 * 
 * @param dp A value in dp (density independent pixels) unit. Which we need to convert into pixels
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent px equivalent to dp depending on device density
 */
public static float convertDpToPixel(float dp, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float px = dp * (metrics.densityDpi / 160f);
    return px;
}

/**
 * This method converts device specific pixels to density independent pixels.
 * 
 * @param px A value in px (pixels) unit. Which we need to convert into db
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent dp equivalent to px value
 */
public static float convertPixelsToDp(float px, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float dp = px / (metrics.densityDpi / 160f);
    return dp;
}

问题在哪里?我只在你的链接中看到彩色方块它会出错吗?请发布logcat输出。仍不工作。这会是新闻部的问题吗?
/**
 * This method converts dp unit to equivalent pixels, depending on device density. 
 * 
 * @param dp A value in dp (density independent pixels) unit. Which we need to convert into pixels
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent px equivalent to dp depending on device density
 */
public static float convertDpToPixel(float dp, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float px = dp * (metrics.densityDpi / 160f);
    return px;
}

/**
 * This method converts device specific pixels to density independent pixels.
 * 
 * @param px A value in px (pixels) unit. Which we need to convert into db
 * @param context Context to get resources and device specific display metrics
 * @return A float value to represent dp equivalent to px value
 */
public static float convertPixelsToDp(float px, Context context){
    Resources resources = context.getResources();
    DisplayMetrics metrics = resources.getDisplayMetrics();
    float dp = px / (metrics.densityDpi / 160f);
    return dp;
}