Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android中带有进度的自定义标题栏_Android_User Interface - Fatal编程技术网

Android中带有进度的自定义标题栏

Android中带有进度的自定义标题栏,android,user-interface,Android,User Interface,我想知道是否有任何方法可以使用我自己的绘图功能定制标题,然后在标题布局中添加一个进度条,使其与内置的android进度条类似 在我的代码中——我希望能够调用setProgressBarIndeTerminateVibility(true),并让它在我的自定义标题栏中显示进度条 这可能吗 我已经设置了我的应用程序主题,以便它使用自定义标题——但我不知道如何或在何处将进度条放置在该布局中 提前谢谢 编辑:现在我使用自己的主题,看起来像这样: <style parent="android:The

我想知道是否有任何方法可以使用我自己的绘图功能定制标题,然后在标题布局中添加一个进度条,使其与内置的android进度条类似

在我的代码中——我希望能够调用
setProgressBarIndeTerminateVibility(true)
,并让它在我的自定义标题栏中显示进度条

这可能吗

我已经设置了我的应用程序主题,以便它使用自定义标题——但我不知道如何或在何处将进度条放置在该布局中

提前谢谢

编辑:现在我使用自己的主题,看起来像这样:

<style parent="android:Theme.Light.NoTitleBar" name="BaseTheme">
    <item name="android:windowBackground">@drawable/splash_bg</item>
    <item name="android:windowTitleStyle">@style/TitleBackground</item>
</style>

@可拉拔/飞溅\u bg
@风格/标题背景
标题背景样式为:

<style name="TitleBackground" parent="android:WindowTitleBackground">
    <item name="android:background">@drawable/title_bar</item>
</style>

@可拉伸/标题栏
给每个人一个更好的主意,像这样。

我认为唯一的方法是使用您自己的自定义标题栏。您可以覆盖android代码,因为它是开源的——但这可能是个坏主意。最好的办法是制作一个标题栏布局,只需在所有其他布局中
,并且可能有一个助手类来显示和隐藏进度栏

下面是一个很好的示例,介绍了如何使用进度指示器实现自定义标题栏:


我的解决方案是使用一个ActivityHelper类来扩展Activity并包含此方法以及一个打开或关闭进度条的类,然后从我的每个活动中扩展该类。

在onCreate中将此代码添加到任何其他代码之前:

requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
requestWindowFeature(Window.FEATURE_PROGRESS);  

setProgress(xx); // Then use this to update the progress to xx amount
要打开/关闭,请使用

setProgressBarIndeterminateVisibility(false);  //true to turn on.
我在一个登录活动中使用了它,我的问题是我运行了大多数异步登录,所以我在更新UI时遇到了问题。但我确实可以显示循环进度动画


我在TabActivity启动的活动意图内的异步调用中更新了TabActivity。我必须在tabActivity和调用的Activity中都添加“requestWind…”行。另外,我发现使用setProgress并没有多大作用,但微调器动画一直在“旋转”,所以我很高兴。

在较新版本中,requestWindowFeature的技术将不起作用。更好的选择是使用谷歌提供的v7.widget.toolbar。下面的链接给出了如何使用它的详细信息


如果您可以用另一个电话代替这个电话,这对您有用吗?因为你永远不可能有任何其他标题功能的自定义标题。我的意思是我可以制作自己的布局,并使用
在每个屏幕上包含我的标题——但由于我无法覆盖所讨论的方法,我必须制作不同的方法来显示和隐藏我自己的进度条——然后将其放入每个活动中。好吧--现在我想起来了,我可以把它放在一个类中,然后就叫那个类,但这仍然比我想做的更多:)。