操作栏中的水平进度条宽度

Posted

技术标签:

【中文标题】操作栏中的水平进度条宽度【英文标题】:Horizontal progress bar width in actionbar 【发布时间】:2013-04-03 21:43:42 【问题描述】:

我正在操作栏中显示一个水平进度条。 我的问题是进度条宽度不是操作栏宽度,而是更小(但居中)。这是正常的行为吗?我怎样才能给它屏幕宽度?

我在 onCreate 中使用它

    requestWindowFeature(Window.FEATURE_PROGRESS);

这在我的方法中

public void setShowIndeterminateProgress(boolean val) 
    setProgressBarIndeterminate(true);
    setProgressBarVisibility(val);

提前致谢。

【问题讨论】:

您是否尝试过在模拟器和至少 2 个不同的设备中进行测试? 你能放一个屏幕吗? 【参考方案1】:

在操作栏样式中有一个属性android:progressBarPadding。将其设置为0dip

<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
    <item name="android:progressBarPadding">0dip</item>
</style>

【讨论】:

【参考方案2】:

您需要从菜单中删除所有项目。

@Override
public boolean onCreateOptionsMenu(Menu menu) 
    MenuInflater inflater = getMenuInflater();
    //inflater.inflate(R.menu.main, menu);
    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setDisplayShowCustomEnabled(false);
    actionBar.setDisplayShowTitleEnabled(false);
    //actionBar.setIcon(R.drawable.ic_launcher);

    LayoutInflater inflator = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View view = inflator.inflate(R.layout.actionbar_main, null);

    //actionBar.setCustomView(view);
    return true;


然后创建一个带有进度条的 xml 布局。在其中宽度 =“match_parent”。 取消注释 actionBar.setCustomView 和此方法以使用您自己的自定义视图为您的 actionBar 充气。

试一试,给我唱歌对你有用吗?

【讨论】:

以上是关于操作栏中的水平进度条宽度的主要内容,如果未能解决你的问题,请参考以下文章

水平进度条:解决系统SeekBar宽度不准确滑动颜色显示不准的问题

android 怎么自定义绘制如下图中这种进度条

delphi xe android 更改ProgressBar1进度条颜色

如何在状态栏中对齐进度条?

基于JQuery的进度条实现

圆形进度指示器忽略宽度/高度属性并且不缩放