问题标签 [background-drawable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 更改 searchview 小部件的背景可绘制对象
我正在尝试更改位于 Android 操作栏 searchview 小部件中的可绘制对象。
目前它看起来像这样:
但我需要将可绘制的蓝色背景更改为红色。
除了滚动自己的搜索小部件之外,我已经尝试了很多方法,但似乎没有任何效果。
有人可以指出我改变这一点的正确方向吗?
android - 可通过代码绘制的圆角
我有一个有时会改变颜色的drawable,但它必须总是有圆角。这是一个 UI 库,所以我不知道它会有什么颜色。XML 不是一个选项,我必须用纯 java 来实现。
有没有办法在不使用 XML 的情况下以编程方式实现这一点?
android - SetBackgroundDrawable 在内存中加载图像吗?
我正在制作一个Android应用程序,我在报告“内存不足异常”时遇到了一些问题,在网上多次搜索后,我发现 android:background 正在将背景图像加载到内存中。
所以我将删除我的 XML 文件中的所有“android:background”声明,并将其替换为:
在此之前,我想知道“setBackgroundDrawable”是否正在将图片加载到内存中?
android - 如何修复横向截止的自定义 SearchView 背景?
我已经按照这个问题的最佳答案来使SearchView
我的 ActionBar 中的小部件适合自定义主题。它适用于纵向模式,但在横向模式下,操作系统将缩小 ActionBar 的高度以最大化内容屏幕空间。而不是SearchView
像其他项目一样将没有边距的小部件安装到 ActionBar 中,而是在顶部被切掉:
我已经翻遍了 Android 源代码的 res-folder,但找不到任何专门的布局或资源来说明如何解决这个问题,甚至 Android 本身如何设法将默认的 Holo SearchView
Widget 放入简化的 ActionBar 中。
任何见解都值得赞赏。谢谢。
android - 如何根据父布局内容高度动态调整图像高度?
我有一个父布局,android:layout_height="wrap_content"
在我的类代码中,它应该从特定图像设置布局背景,但图像高度大于内容高度。我想将背景的图像高度调整为与父布局内容的高度相同。我怎样才能做到这一点?
黑色 - 父布局
绿色 - 布局内容
棕色 - 布局背景(来自可绘制)
这是我设置父布局背景的方法:
view.setBackgroundDrawable(getResources().getDrawable(R.drawable.brown));
编辑:
这是我的xml:
和我在我的java类监听器中调用这个布局的地方:
这就是我的意思是我无法获得 ImageView 本身的引用,因为我只能拥有View view
from onItemClick
。这是一个 ListView,我想在单击时更改背景。
无论如何,我如何调整内容的高度,以便背景(棕色)高度只是fill
父布局(绿色)?
android - 同时导入 R (android.R 和.R)
我在我的应用程序中使用自定义背景。我正在寻找的是如何default drawable
从android.R
. 这是因为如果用户选择白色或深色背景,我不想使用自定义图像,而是使用例如:(@android:drawable/screen_background_light
因此,保存图像不会占用空间)。
如果我尝试发生import android.R.*
错误(那是因为我使用了另一个文件R
)。
我知道如何通过做 XML 来做到这一点android:background=@android:drawable/screen_background_light"
,但这是我现在想要做的。
java - 如何拥有不调整大小的全屏背景图像(带中心裁剪)
我正在尝试将照片设置为Activity
. 我希望背景是全屏图像(无边框)。
因为我希望图像在不拉伸/挤压的情况下填充整个活动的背景(即 X 和 Y 的不成比例缩放)并且我不介意是否必须裁剪照片,所以我使用RelativeLayout
带有ImageView
(with android:scaleType="centerCrop"
) 和我的布局的其余部分由 aScrollView
及其子项组成。
问题是布局的其余部分有一些EditText
视图,当软键盘出现时,ImageView 会重新调整大小。无论软键盘是否可见,我都希望背景保持不变。
我在 SO 上看到了很多关于 ImageViews 被重新调整大小的问题,但(imo)没有令人满意的答案。它们中的大多数只包括设置android:windowSoftInputMode="adjustPan"
- 这并不总是实用的,特别是如果您希望用户能够在活动中滚动 - 或者使用getWindow().setBackgroundDrawable()
不裁剪图像。
我已经设法将 ImageView 子类化并覆盖它onMeasure()
(在此处查看我的答案:ImageView resized when keyboard open),以便它可以根据标志强制固定高度和宽度 - 等于设备的屏幕尺寸,但我是想知道是否有更好的方法来实现我想要的结果。
所以,总而言之,我的问题是:如何将 Activity 的背景设置为全屏照片
使用 scale type = "centerCrop",使照片均匀缩放(保持其纵横比),因此两个尺寸(宽度和高度)将等于或大于视图的相应尺寸;
弹出软键盘时不会调整大小;
回答:
我最终遵循了@pskink的建议并进行了分类BitmapDrawable
(请参阅下面的答案)。我必须进行一些调整以确保BackgroundBitmapDrawable
始终以填充屏幕的方式缩放和裁剪。
这是我的最后一堂课,改编自他的回答:
然后只需创建一个BackgroundBitmapDrawable
并将其设置为根视图的背景即可。
android - 动态更改相对布局背景时的性能问题
我正在尝试创建一个屏幕,我可以在其中从 SDCard 中选择多个图像并将它们加载到ViewPager和Gridlayout中,就像在WhatsApp 发送多个图像中的方式一样(如下面的屏幕截图所示)。
我可以通过使用 ViewPager 和 GridLayout(用于下面的图像选择视图)来实现屏幕截图中的效果。当用户滑动 ViewPager 时,我需要更改 GridLayout 中的选择器。这个SelectionChange部分也是通过使用RelativeLayout作为GridLayout的Child并更新RelativeLayout的Background来实现的。下面 ade 那些 xmls
gridlayout_item.xml
activity_multi_seletion.xml
on_select.xml(选择可绘制)
但是我在更改ViewPager 的 PageChange(onPageSelected)上 relativeLayout 的背景时遇到了性能问题。我的意思是 ViewPager 页面被击中了一段时间并且正在移动。
如果我在 ViewPager 的 PageChange(onPageSelected) 上评论更新 gridlayout 项目的背景,它的移动平滑。下面是代码片段。
请帮我解决这个问题。
android - 如何动态更改 TextView 的背景颜色?
我已经引用了这个问题circle.xml
,并使用 (在 res/drawable 中)为 TextView 实现了圆形背景,并将其设置android:background="@drawable/circle"
为 TextView。但我需要的是,我需要通过代码动态设置背景颜色。就像棒棒糖联系人应用程序一样,如下所示
我怎样才能做到这一点?我需要圆形的 TextView 背景总是如上图所示