Я реализую пользовательское представление в Android Studio, используя java. В процессе я должен обновить значение до пользовательского объекта, созданного из пользовательского представления. Я не могу это сделать. Вот мой пример кода:
пользовательский вид ->
public class simpleclass extends View{
private simple_line line;
constructors[..
line=new simple_line(0);
];
public void update_line(float up_val){
line.set_xval=up_val;
}
onmeasuremethod[..];
@Override
protected void onDraw(Canvas canvas){line.draw_line(canvas); }
private class simple_line{
private Paint mpaint;
private float xval;
public simple_line(float val){
xval=val;
mpaint=new Paint();
mpaint.setStrokeWidth(10);
mpaint.setStyle(Paint.Style.STROKE);
mpaint.setColor(Color.BLUE);
}
public void set_xval(float val){
this.xval=val;
invalidate();
}
public float get_xval(){
return xval;
}
public draw_line(Canvas canvas){
Path mypath=new Path();
mypath.moveTo(getwidth/2+xval,0);
mypath.lineTo(getwidth/2+xval,getHeight);
mypath.close();
canvas.drawPath(mypath,mpaint);
}
}
}
Основная деятельность ->
simple_object=new simpleclass(this);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
simple_object.update_line(100);
}
});
обновление при нажатии кнопки не работает при создании объекта (simple_object), но будет работать после того, как объект не создан.
почему так?
как обновить когда объект создан?