【发布时间】:2013-08-18 18:11:00
【问题描述】:
我正在尝试使用以下代码以编程方式将 ProgressBar 居中:
ViewGroup layout = (ViewGroup) findViewById(android.R.id.content).getRootView();
progressBar = newProgressBar(SignInActivity.this,null,android.R.attr.progressBarStyleLarge);
progressBar.setIndeterminate(true);
progressBar.setVisibility(View.VISIBLE);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(100,100);
params.addRule(RelativeLayout.CENTER_IN_PARENT);
layout.addView(progressBar,params);
大小设置似乎工作正常,但ProgressBar 不在现有布局的中心(由具有相对布局的 xml 定义)。这里有什么明显的问题吗?
XML如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".test"
android:typeface="monospace">
</RelativeLayout>
即它只是一个空的相对布局来测试,看看我是否可以让它以编程方式添加进度条。
谢谢。
【问题讨论】:
-
请发布 XML :)
-
当您可以在 xml 中实现时,您为什么要努力以编程方式创建?
-
我将它创建为一个类,因为它是我想在应用程序中发生不同进程时动态注入的视图。这样做意味着我不必放入所有布局。我可以将它实例化为一个对象并将其附加到当前布局中。
标签: android android-progressbar