草庐IT

android seekbar progressdrawable : background bitmap doesnt stretch (height)

coder 2023-12-17 原文

我的布局xml如下:

 <SeekBar
        android:id="@+id/progress"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_margin="10dp"
        android:gravity="center"
        android:progressDrawable="@drawable/progressbar_drawable"
        android:progress="50"
        android:thumb="@drawable/progressbar_handle_selector"
        android:layout_toLeftOf="@+id/showChat"
        android:layout_toRightOf="@+id/play" />

Seekbar的进度drawable如下:

@drawable/progressbar_drawable

  <?xml version="1.0" encoding="utf-8"?>
  <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

  <item android:id="@android:id/background" android:drawable="@drawable/bg_progressbar_9patch"/>
  <item android:id="@android:id/progress">
    <clip>
        <shape>
            <gradient
                android:angle="90"
                android:endColor="#d9b546"
                android:startColor="#cc520f" />
        </shape>
    </clip>
  </item>

  </layer-list>

因此,背景位图(白色的)不会拉伸(stretch)高度并且与进度可绘制对象(橙色的)相比仍然太低,这是一个示例:

而且,它在不同的屏幕上看起来不同:背景位图与进度图相比具有不同的高度。例如(另一个屏幕):

我的问题是:为什么进度和背景可绘制对象(橙色和白色条纹)不始终具有相同的高度以及如何使它们具有相同的高度?


更新

PNG资源:

最佳答案

我从你的图像创建了 9-patch 并将它放在 drawable-hdpi 文件夹中,一切看起来都很好......我在 eclipse ui 预览器中有一些 Artifact ,但在设备上一切正常......

https://dl.dropbox.com/u/13106986/bg_progressbar_patch.9.png

关于android seekbar progressdrawable : background bitmap doesnt stretch (height),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14184227/

有关android seekbar progressdrawable : background bitmap doesnt stretch (height)的更多相关文章

  1. ruby-on-rails - wicked_pdf : footer height/styling - 2

    我正在使用很棒的wicked_pdfgem生成PDF,但我不知道如何更改页脚中的某些样式。我有一个用于页脚的HAML模板,大致如下所示:!!!%html%head%meta{:charset=>"utf-8"}=wicked_pdf_stylesheet_link_tag"pdf"%body.footer%pLine1%pLine2%pLine3还有一些样式:.footer{padding-top:1em;border-top:1pxsolid#ccc;}样式应用得很好,但由于页脚高度较小,只有第一行可见。我试过通过CSS设置高度,但到目前为止还没有。如果我使用例如center、att

  2. ruby-on-rails - Gmaps4rails : Setting map width and height - 2

    阅读gmaps4railsgem文档,我没有找到任何设置map宽度和高度的方法。有什么办法可以做到这一点吗? 最佳答案 我应该提供有关此的更多详细信息。我将执行安装rake任务以在Rails应用程序中复制css和javascript。好吧,现在,只需在您的css中覆盖它(我假设您没有更改mapID)。#gmaps4rails_map{width:800px;height:400px;}如果你想让它工作,请注意在yield(:head)之后包含你的css 关于ruby-on-rails-G

  3. javascript - 选择多个元素 height(); - 2

    我只是想知道为什么这个jQuery不能工作:hdr=$('.header-wrapper,#top-bar,#new-showroom-header').height();如您所见,我正在尝试获取多个元素的高度并将它们全部存储在我的变量中。我希望jQuery将所有元素的高度加在一起以创建最终值,但是当我console.log变量hdr时,我得到了所选第一个元素的高度。知道如何全选并将它们存储到我的var中吗? 最佳答案 使用$.each()得到高度的总和。varhdr=0;$('.header-wrapper,#top-bar,#n

  4. javascript - JqxChart给出错误Error : Invalid negative value for <rect> attribute height ="-1" - 2

    我正在使用JqxPanel、JqxDocking和JqxChart。JqxPanel包含工作正常的停靠窗口。当我曾经将JqxChart放入窗口时,Chrome给出错误错误:标签处的属性高度=“-1”(重复2次)的负值无效请有人能在这方面帮助我JavaScriptdevicechart.jsvarDevicesgenerateData=function(){vardevicedata=newArray();vardeviceNames=["Working","GPSAntenna","PowerRemoved","SIMProblem","Servicing","Damaged"];va

  5. javascript - jQuery(window).height() 不适用于移动浏览器 - 2

    我有一个使用jQuery(window).height()的整页幻灯片,它在大多数浏览器上都能正常工作,但是我在我的手机(Android浏览器和Dolphin)上检查了它,幻灯片不断地增长,远远超过视口(viewport)的高度。这是我的代码:varheight=jQuery(window).height();jQuery('.slide').each(function(index,element){if(height>600)jQuery(this).height(height);elsejQuery(this).height(600);});jQuery(window).on('r

  6. javascript - 数据 :image/jpeg;base64 how to get its width and height in pixels - 2

    如何获取其src在data:image/jpeg;base64中的像素图像的宽度和高度?使用设置img.src并调用width()没有成功。varimg=jQuery("");img.width()//=0 最佳答案 这会起作用:varimg=newImage();img.onload=function(){alert(this.width);}img.src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAgAA.......";FIDDLE我通过转换图像来确保base64有效here,onloa

  7. javascript - 使用 box-sizing :border-box 时,jQuery.height() 在 WebKit 和 Firefox 中的行为不同 - 2

    我有一个应用了以下样式的文本区域:textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;}如果我随后运行以下javascript/jquery代码,使用Safari(5.0.6)和Chrome(16.0.x)时,我的文本区域的高度将减半:$('textarea').each(function(){var$this=$(this);$this.height($this.height());}根据.height()的jQuery文档,这是预期的行为,因为.height()返回内容高度(无填充、边框),而不管box

  8. JavaScript/jQuery : how do I get the inner window height? - 2

    比如...不包括地址栏、书签等的高度,只是查看空间。$(window).innerHeight()似乎不起作用。 最佳答案 使用.height()为此,如API中所述:Thismethodisalsoabletofindtheheightofthewindowanddocument.$(window).height();//returnsheightofbrowserviewport$(document).height();//returnsheightofHTMLdocument至于为什么.innerHeight()不工作:Thi

  9. javascript - 在纯 JavaScript 中,jQuery 的 .height() 和 .width() 等价于什么? - 2

    是否有任何等效的跨浏览器API来获取不包括边框大小、填充和边距的内容高度和宽度?我没有使用jQuery的选项。编辑:忘了说了,我也要支持IE8。 最佳答案 好吧,我已经设法找到了解决方案。对于IEWindow.getComputedStyle()可以解决问题。Window.getComputedStyle()方法在应用事件样式表并解析这些值可能包含的任何基本计算后给出元素的所有CSS属性的值。参见https://developer.mozilla.org/en-US/docs/Web/API/Window.getComputedSt

  10. javascript - d3 : what is the self as in d3. select(self.frameElement).style ("height", height + "px"); - 2

    我在许多D3示例中看到过如下语句。但是,我无法找出它的含义。特别是,我不知道这个self变量指的是什么。此外,这是否体现了某种D3魔术/惯例,或者它只是一个临时的东西?非常感谢。d3.select(self.frameElement).style("height",height+"px");顺便说一句,here是我复制上面语句的例子。 最佳答案 self:如果没有重新定义(通常作为this的副本),那么它就是始终指向windowwindow对象。因此它们可以互换使用。window.frameElement:返回嵌入窗口的元素(例如或

随机推荐