在android上刷新视图

时间:2014-05-27 12:56:50

标签: android android-view

我有一个继承自视图的类。 (基本上它绘制了一个形状)。在我的主要活动中有一个按钮。 当我单击按钮创建一个继承自View的新类时,我就会绘制新的形状。但是在我的屏幕上发生了任何变化。

这是我的按钮点击事件;

btn1.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {

        mView.invalidate();
        mView = new MyPen(getBaseContext(), null);
        mView.SetValueOlcu(tvOlcu.getText().toString());
        frmLayout.addView(mView,LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        frmLayout.refreshDrawableState();
        frmLayout.buildLayer();
        Toast.makeText(getBaseContext(), "", Toast.LENGTH_SHORT).show();    

    }
});

*我使用了refreshDrawableState();,但没有任何变化。如何更新反映屏幕上最后更改的观点

1 个答案:

答案 0 :(得分:0)

为什么在onClick中使用mView.invalidate()作为第一个命令,并且在创建新的MyPen对象之前?它没有任何意义。当您的视图已在您的布局中绘制并进行一些更改以重绘它时,您应该使用invalidate命令。您的视图可视化可能有问题?你的MyPen做了什么?