首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >操作栏进度指示器和刷新按钮

操作栏进度指示器和刷新按钮
EN

Stack Overflow用户
提问于 2012-05-21 03:31:17
回答 2查看 13.3K关注 0票数 24

是否可以显示进度指示器(使用requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS)代替刷新按钮显示的指示器?

这个想法是像Gmail客户端一样工作的:当不加载时,显示刷新按钮,当加载时,在刷新按钮的位置显示不确定的微调器

EN

回答 2

Stack Overflow用户

发布于 2012-09-04 05:24:03

是的,这样做很容易。

代码语言:javascript
复制
private MenuItem refresh;
.
.
.

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getSupportMenuInflater().inflate(R.menu.options_menu, menu);

    // refresh menu item
    refresh = menu.findItem(R.id.refresh_option_item);

    return super.onCreateOptionsMenu(menu);
}

你必须得到你的刷新菜单项,然后,你可以启用旋转项目,如下所示:

代码语言:javascript
复制
refresh.setActionView(R.layout.actionbar_indeterminate_progress);

当您的任务完成后,您可以禁用旋转,如下所示:

代码语言:javascript
复制
refresh.setActionView(null);

最后,actionbar_indeterminate_progress.xml可以是这样的:

代码语言:javascript
复制
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="64dp"
    android:layout_height="wrap_content"
    android:gravity="center">
    <ProgressBar android:layout_width="32dp"
        android:layout_height="32dp"
        android:layout_gravity="center"
        style="?android:attr/indeterminateProgressStyle" />
</FrameLayout>
票数 53
EN

Stack Overflow用户

发布于 2012-08-05 22:49:59

您可以尝试执行以下操作:将刷新按钮和不确定微调器都放入FrameLayout中,以便这两个微调器堆叠在z平面上,在屏幕上的相同位置显示。然后你只需要玩弄能见度。如果要显示刷新按钮,请将微调器设置为不可见,并将按钮设置为可见。如果要显示微调器,请将其设置为可见,并将按钮设置为不可见。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10676517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档