在自定义视图中添加视图

时间:2015-02-17 10:33:27

标签: android views custom-view

我正在尝试在RelativeLayout中添加进度条(圆形微调器)。 relativeLayout是可见的,但进度条不会显示。以下是我正在使用的代码,但它似乎无法正常工作。

public class MyCustomView extends RelativeLayout
{

    RelativeLayout rLayout;
    ProgressBar mProgressbar;

    public void init()
    {

        mProgressbar = new ProgressBar(mContext, null, android.R.attr.progressBarStyle);

        RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        params.addRule(RelativeLayout.CENTER_IN_PARENT);
        mProgressbar.setLayoutParams(params);

        rLayout = new RelativeLayout(mContext);
        rLayout.setBackgroundColor(Color.CYAN);

        rLayout.addView(mProgressbar);
        addView(rLayout);
    }

    @Override
    protected void onLayout(boolean changed, int l, int t, int r, int b) {

        if(rLayout != null)
        {
            rLayout.layout(l, t, r, b);
        }
    }

}

我做错了什么?

编辑:

我正在尝试在RelativeLayout中添加进度条(圆形微调器)。 relativeLayout是可见的,但进度条不会显示。以下是我正在使用的代码,但它似乎无法正常工作。

public class MyCustomView extends RelativeLayout
{
    ProgressBar mProgressbar;

    public void init()
    {

        mProgressbar = new ProgressBar(mContext, null, android.R.attr.progressBarStyle);

        RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        params.addRule(RelativeLayout.CENTER_IN_PARENT);
        mProgressbar.setLayoutParams(params);

        addView(mProgressbar);
    }

}

Progressbar现在还没出现?

我的目标:

  • 在MyCustomView的中心显示ProgressBar。

0 个答案:

没有答案