如何在android中以编程方式设置android:id?
我想以编程方式设置如何在android中以编程方式设置android:id?,android,android-drawable,Android,Android Drawable,我想以编程方式设置android:id=“@android:id/background”。 我尝试以编程方式将可绘制的xml代码改编成java代码。 我为代码编写了其他选项,但无法将android:id=“@android:id/background”写入代码。 这是我的密码。请让我知道路 xml 结果屏幕 您可以使用并按索引设置id。检查下面的代码。我对它做了一些修改,使之与xml-drawable相匹配 val layer1 = GradientDrawable() layer1.corne
android:id=“@android:id/background”
。
我尝试以编程方式将可绘制的xml代码改编成java代码。
我为代码编写了其他选项,但无法将android:id=“@android:id/background”
写入代码。
这是我的密码。请让我知道路
xml
结果屏幕
您可以使用并按索引设置id。检查下面的代码。我对它做了一些修改,使之与xml-drawable
相匹配
val layer1 = GradientDrawable()
layer1.cornerRadius = 10f
layer1.setStroke(1, Color.WHITE)
layer1.setColor(Color.YELLOW)
val scaleDrawable = GradientDrawable()
scaleDrawable.cornerRadius = 10f
scaleDrawable.setStroke(1, Color.WHITE)
scaleDrawable.setColor(Color.BLUE)
val layer2 = ScaleDrawable(scaleDrawable, Gravity.START,1f,0.1f)
val drawableList = arrayOf(layer1, layer2)
val layerList = LayerDrawable(drawableList)
layerList.setId(0,android.R.id.background)
layerList.setId(1,android.R.id.progress)
seekBar.progressDrawable = layerList
谢谢你的回答。但我得到了同样的结果。你能给我一些建议吗?蓝色进度条仍然从中心开始,即使我将重力设置为gravity.Bottom。我使用了
gravity.START
,它工作正常。我已经用水平Seekbar
对它进行了测试。你是怎么做垂直搜索杆的加上疑问哦天啊。。你救了我!!它在重力作用下工作。开始。完成此模块后,我将添加github地址!谢谢你的帮助。
val layer1 = GradientDrawable()
layer1.cornerRadius = 10f
layer1.setStroke(1, Color.WHITE)
layer1.setColor(Color.YELLOW)
val scaleDrawable = GradientDrawable()
scaleDrawable.cornerRadius = 10f
scaleDrawable.setStroke(1, Color.WHITE)
scaleDrawable.setColor(Color.BLUE)
val layer2 = ScaleDrawable(scaleDrawable, Gravity.BOTTOM,1f,0.1f)
val drawableList = arrayOf(layer1, layer2)
val layerList : LayerDrawable = LayerDrawable(drawableList)
this.progressDrawable = layerList
val layer1 = GradientDrawable()
layer1.cornerRadius = 10f
layer1.setStroke(1, Color.WHITE)
layer1.setColor(Color.YELLOW)
val scaleDrawable = GradientDrawable()
scaleDrawable.cornerRadius = 10f
scaleDrawable.setStroke(1, Color.WHITE)
scaleDrawable.setColor(Color.BLUE)
val layer2 = ScaleDrawable(scaleDrawable, Gravity.START,1f,0.1f)
val drawableList = arrayOf(layer1, layer2)
val layerList = LayerDrawable(drawableList)
layerList.setId(0,android.R.id.background)
layerList.setId(1,android.R.id.progress)
seekBar.progressDrawable = layerList