我开始使用Android并开始图像处理。 我想创建一个具有随机黑白像素的网格。我试图用位图,但我真的不知道它是如何工作的。Android上的随机黑白网格
我试着用下面的代码,但它说: 类型的表达式必须是一个数组类型,但它解决了在矩阵
即使没有这个错误,我不知道这是正确的方式继续。所以,如果你有任何想法...
谢谢!
import java.util.Random;
import android.support.v7.app.ActionBarActivity;
import android.graphics.Bitmap;
import android.graphics.Matrix;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
public class MainActivity extends ActionBarActivity {
private ImageView img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
img = (ImageView)findViewById(R.id.imageView1);
}
public void RandomImage (View view)
{
Random rand = new Random();
Matrix mat = new Matrix();
for (int i=0; i<100; i++)
{
for (int j=0; j<100 ; j++)
{
mat[i][j]=rand.nextInt(1);
img.setImageMatrix(mat);
}
}
}
}
我不认为'img.setImageMatrix(mat);'应该在你的for循环中。但这是一个单独的问题 – Doomsknight 2014-11-21 14:16:38
是的,你说得对。这不是故意的。我会改变它。 – user3855955 2014-11-21 14:20:28
另一点是'nextInt(1)'将返回0我认为(你应该检查这个)。 'nextInt(2)'将返回0或1.考虑在自定义画布上绘制正方形(或像素取决于您想要的比例)。实现像绘图一样的网格。或者使用画布放到位图上,以返回网格图像。有关更多信息,请参阅http://stackoverflow.com/questions/5663671/creating-an-empty-bitmap-and-drawing-though-canvas-in-android – Doomsknight 2014-11-21 14:26:30