于今腐草无萤火,终古垂杨有暮鸦。这篇文章主要讲述Android:背景颜色和图像同时相关的知识,希望能为你提供帮助。
我需要通过java而不是xml同时拥有textview背景的颜色和图像。换句话说,我需要像这个css规则这样的东西:
background:#f00 url(...);
如何在不使用xml的情况下实现这一目标?
谢谢
答案你不能没有xml。
步骤1
创建新的Drawable资源文件textview_background.xml
<
?xml version="1.0" encoding="utf-8"?>
<
layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<
item android:id="@+id/background" >
<
shape android:shape="rectangle">
<
solid android:color="COLOR"/>
<
/shape>
<
/item>
<
item android:id="@+id/item_img">
<
bitmapandroid:src="https://www.songbingjia.com/android/IMAGE" />
<
/item>
<
/layer-list>
第2步
在布局xml文件中:
<
TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/textview_background" />
第3步
【Android(背景颜色和图像同时)】如果要以编程方式自定义背景:
// change background image
LayerDrawable layer = (LayerDrawable) textView.getBackground();
BitmapDrawable bitmap = (BitmapDrawable) resources.getDrawable(R.drawable.IMAGE);
layer.setDrawableByLayerId(R.id.item_img, bitmap);
// change background color
GradientDrawable bgShape = (GradientDrawable) textView.getBackground();
bgShape.setColor(Color.YOURCOLOR);
推荐阅读
- 在android studio中根据时间改变背景
- OnApplicationFocus()和OnApplicationPause()之间的区别是什么()
- Android Spinner在Espresso测试中点击后立即被解雇
- 关于扬声器标签如何在android中显示扬声器标签
- Android架构验证
- 使用Tab与新ToolBar(AppCompat v7-21)
- Android(为什么在创建选项卡时会调用onTabSelected())
- 设置AppVeyor的C ++语言标准
- 无法构建xamarin android项目