【发布时间】:2013-09-25 12:32:38
【问题描述】:
当用户在一个活动中单击按钮时,我需要处理一些数据,因此屏幕看起来像应用程序停止了 2-3 秒。这不是很多,但我想向用户提供一切正常的信息,IMO 最好的方法是进度条,只有在处理数据时才可见。
我找到了ProgressBar的代码,看起来是这样的:
<ProgressBar
android:id="@+id/loadingdata_progress"
style="?android:attr/progressBarStyle"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignBottom="@+id/fin2_note"
android:layout_centerHorizontal="true"
android:indeterminate="true"
android:visibility="invisible" />
并将其插入到我的布局中间。
为了尝试进度条是否有效,我输入了这段代码
loadingimage= (ProgressBar) findViewById(R.id.loadingdata_progress);
loadingimage.setVisibility(View.VISIBLE);
进入onCreate 方法,一切看起来都很好。
然后我重新创建了代码以仅在处理数据时才显示此进度条。
点击后用户调用该方法
public void fin2_clickOnFinalization(View v)
{
loadingimage= (ProgressBar) findViewById(R.id.loadingdata_progress);
loadingimage.setVisibility(View.VISIBLE);
// code where data is processing
loadingimage.setVisibility(View.INVISIBLE);
}
屏幕上什么也没有出现。我不知道哪里错了。如果我通过 id 找到进度条,对我来说很奇怪,我可以在 onCreate 方法中控制它,但在 onclick 方法中它是我无法控制的。
【问题讨论】:
-
请粘贴完整的xml文件,其中ProgressBar编码
-
我不认为错误出在 xml 文件中,因为当进度条在 onCreate 中设置为可见时,一切正常
标签: android android-progressbar