Android 如何仅在活动上而不在包含的TabHost上显示ProgressDialog?

Android 如何仅在活动上而不在包含的TabHost上显示ProgressDialog?,android,Android,当前,当我显示一个ProgressDialog时,它占据了整个屏幕,包括选项卡,如下所示: 这是否可能只涵盖活动并使选项卡正常工作?理想情况下,它应该是这样的,这样我就可以单击按钮离开加载一个不同的活动,而不是等待当前活动完成加载: 这可能吗?是否有其他方法可以实现此结果?扩展进度对话框类,在该类中进行自定义 公共类CustomProgressDialogClass扩展ProgressDialog{ public CustomProgressDialogClass(Context conte

当前,当我显示一个
ProgressDialog
时,它占据了整个屏幕,包括选项卡,如下所示:

这是否可能只涵盖活动并使选项卡正常工作?理想情况下,它应该是这样的,这样我就可以单击按钮离开加载一个不同的活动,而不是等待当前活动完成加载:


这可能吗?是否有其他方法可以实现此结果?

扩展进度对话框类,在该类中进行自定义

公共类CustomProgressDialogClass扩展ProgressDialog{

public CustomProgressDialogClass(Context context) {
    super(context, R.style.CustomDialogThemeForPorgressbar);
    // TODO Auto-generated constructor stub

}

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.progress_layout);
}
} 正在进行布局\u布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" 
android:id="@+id/progressbar_layout">

<RelativeLayout
   android:id="@+id/relativeLayout1"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:gravity="center"
   android:background="@drawable/loader_bg"  >

   <ProgressBar
        android:id="@+id/progressbarlayout_progressbar"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"/>

在“值”文件夹“创建样式”文件夹中,粘贴此

<style name="CustomDialogThemeForPorgressbar" parent="@android:style/Theme.Dialog">
    <item name="android:windowBackground">@color/transparent</item>
    <item name="android:windowIsFloating">false</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:gravity">center</item>
</style>

@彩色/透明
假的
真的
居中

对windowIsFloating、gravity和windowNoTitle进行更改以显示在tab host中我觉得在这种情况下使用
ProgressDialog
不是最合适的选择。对话框的逻辑是阻止整个窗口,以指示用户此时无法执行任何操作

如果要显示活动某些部分的进度,应使用
ProgressBar
。如果希望外观类似于进度对话框,则可以使用自定义
进度栏
(看起来类似于进度对话框),并动态附加/删除或更改可见性以显示或隐藏它

我想你也可以看看这个:


(我假设您正在寻找一个概念性的答案,即找到实现这种行为的最合适的方法)

我已经这样做了,但它与常规的
ProgressDialog
没有任何不同。您可以指定需要更改的内容吗?您是否对windowIsFloating(即true)和windowNoTitle(即flaseYes)进行了更改,这没有任何区别。