我正试着用Roboelectic通过位图和Getpixel方法运行一些测试:((BitmapDrawable)Robolectric.application.getResources().getDrawable(R.drawable.color_test_1)).getBitmap().getPixel(100,100);,但是不管我怎么尝试,我总是得到0作为颜色。
即使我使用下面的例子:
public void testGetPixelsWithoutAlpha() throws Exception {
int[] colors = new int[100];
for (int i = 0; i < 100; i++) {
colors[i] = i;
}
Bitmap bm = Bitmap.createBitmap(colors, 10, 10, Bitmap.Config.RGB_565);
int[] pixels = new int[100];
bm.getPixels(pixels, 0, 10, 0, 0, 10, 10);
for (int i = 0; i < 100; i++) {
int p = bm.getPixel(i % 10, i / 10);
System.out.println(p);
assertEquals("getPixels", p, pixels[i]);
}我仍然得到0作为像素。
发布于 2015-04-30 04:07:03
不幸的是,我不认为有一种方法可以在Robolectric中进行这种测试。Bitmap的有趣部分是原生代码,而不是由Robolectric运行的。因此,像素实际上不会被设置或更改。
https://stackoverflow.com/questions/24258801
复制相似问题