Java 确定按钮周围的圆形进度条

Java 确定按钮周围的圆形进度条,java,android,xml,android-progressbar,Java,Android,Xml,Android Progressbar,我需要在我的android应用程序中提供扫描功能。我的设计是这样的: 我想在扫描按钮周围放置圆形的progressbar(黄色)。我看过may教程,但所有这些教程都将文本放在progressbar中 这就是我迄今为止所取得的成就: 通过此代码: XML: 问题1:progressbar不确定,位置不正确 问题2:JAVA代码适用于水平progressbar,但当单击按钮时,圆形progressbar崩溃 我知道我的问题很详细。您不需要完全解决它,只要给我正确的方向。阅读您的错误stackt

我需要在我的android应用程序中提供扫描功能。我的设计是这样的:

我想在扫描按钮周围放置圆形的
progressbar
(黄色)。我看过may教程,但所有这些教程都将文本放在
progressbar

这就是我迄今为止所取得的成就:

通过此代码:

XML:

问题1:
progressbar
不确定,位置不正确

问题2:JAVA代码适用于水平progressbar,但当单击
按钮时,圆形progressbar崩溃


我知道我的问题很详细。您不需要完全解决它,只要给我正确的方向。

阅读您的错误stacktrace,它会告诉您第二个问题的错误所在。我认为您必须制作一个相当定制的组件来显示这种进度。您应该能够通过为进度条提供定制的可绘制效果。看一看,它应该为你指明了正确的方向。
    <ProgressBar
        android:id="@+id/progressbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminate="false"
        android:max="100"
        style="?android:attr/progressBarStyleLarge"/>

    <Button
        android:id="@+id/scanbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/scan"
        android:background="@drawable/scan_button"
        android:layout_gravity="center_horizontal"
        android:layout_centerInParent="true"/>

</RelativeLayout>
Button ScanButton = (Button)findViewById(R.id.scanbutton);
ProgressBar progressbar = (ProgressBar)findViewById(R.id.progressbar);
ScanButton.setOnClickListener(new OnClickListener()
{
    @Override
    public void onClick(View v)
    {
        new Thread(new Runnable()
        {
            public void run()
            {
                while(status < 100)
                {
                    status += 1;
                    ScanScreen.this.progressbar.setProgress(status);
                    Thread.sleep(100);
                }
            }
        }).start();
    }
});