我有一个 customView 并对其进行了分级,但是当我尝试将级别从 mainActivity 传递到我的 customView 时
Bundle transporter=getIntent().getExtras();
日食说;
对于 CustomView 类型,方法 getIntent() 未定义。
我不想为每个级别制作 customView。我必须从我的 MainActivity 中获取级别。
我该怎么做?请帮忙。
这是我的活动
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Bundle selectionLevel=getIntent().getExtras();
level=selectionLevel.getString("key");
setContentView(R.layout.cizme_oyunu);
initial();
}
private void initial() {
check = (Button) findViewById(R.id.checkButton);
backrounds = new ArrayList<Integer>();
cizmeView = (CizmeOyunuView) findViewById(R.id.Cizme_View);
check.setOnClickListener(this);
for (int i = 1; i < 10; i++) {
int imageResources;
imageResources = getResources().getIdentifier("check_rakam" + i,
"drawable", this.getPackageName());
backrounds.add(imageResources);
}
}
我从复选框中获取级别并分配给我的活动中的“级别”。
之后,我想在 customView.CustomView 构造函数上将背景设置为指定级别。
public CizmeOyunuView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
mPaint = new Paint();
mPaint.setAntiAlias(true);
mPaint.setDither(true);
mPaint.setColor(0xff00ff00);// our draw
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setStrokeJoin(Paint.Join.ROUND);
mPaint.setStrokeCap(Paint.Cap.ROUND);
mPaint.setStrokeWidth(50);
myContext = context;
mPath = new Path();
mBitmapPaint = new Paint();
mBitmapPaint.setColor(Color.RED);
setBackgroundResource(R.drawable.check_rakam0);
}