所以我有一个应用程序可以检查各种要求,并使用ProgressBar
显示检查过程。在第一次启动时,它看起来就像它应该。但是,如果我使用startActivityForResult()
(在本例中为辅助功能设置)启动另一个活动,则应用会再次初始化整个过程,但不知何故ProgressBars
看起来非常奇怪(see video below)。< / p>
布局:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="20dip"
android:layout_marginLeft="20dip"
android:layout_marginTop="20dip"
android:orientation="horizontal"
android:paddingLeft="5dip" >
<FrameLayout
android:layout_width="48dip"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/checkImage2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="centerInside"
android:visibility="invisible" />
<ProgressBar
android:id="@+id/checkProgess2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:visibility="visible" />
</FrameLayout>
<TextView
android:id="@+id/checkText2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="5dip"
android:gravity="center_vertical"
android:text="Checking for Service..." />
</LinearLayout>
正在初始化(在OnCreate
和OnActivityResult
之后)
private void initActivity() {
imageRoot.setVisibility(ImageView.INVISIBLE);
imageService.setVisibility(ImageView.INVISIBLE);
progRoot.setVisibility(ImageView.VISIBLE);
progService.setVisibility(ImageView.VISIBLE);
textRoot.setText("checking for root..."); //TODO
textService.setText("checking for service..."); //TODO
layoutInfo.setVisibility(LinearLayout.GONE);
setResult(Activity.RESULT_CANCELED);
CheckForRoot checkRootTask = new CheckForRoot();
checkRootTask.execute(AppName.valueOf(getIntent().getStringExtra(APPNAME)));
}
您是否知道问题的原因是什么?
答案 0 :(得分:0)
好的,我让它改变了FrameLayout
的
android:layout_height="fill_parent"
到
android:layout_height="48dip"
不过,我不知道为什么会这样 - 如果你知道原因,请告诉我!