如何在运行时设置按钮的财产“android:drawableTop
”如何设置属性“机器人:drawableTop”在运行时
52
A
回答
109
使用按钮的
button.setCompoundDrawablesWithIntrinsicBounds(left, top, right, bottom);
设置可绘制(如果有的话)显示在文本的左侧,上方,右侧和下方。如果您不想在此处绘制Drawable,请使用0。 Drawables的边界将被设置为它们的内在边界。
如果使用
button.setCompoundDrawables(left, top, right, bottom);
设置可绘制(如果有的话)出现的,上面的左边,右边和下面的文字。如果您不想在此处绘制Drawable,请使用null。 Drawables必须已经有setBounds(Rect)调用。
2
Button button = (Button) findViewById(R.id.button);
button.setCompoundDrawables(left, top, right, bottom);
+0
的方法是非常正确的,但我想设置资源ID到位绘制的。有没有办法做同样的事情? – Maneesh 2011-02-07 09:44:52
20
final Drawable drawableTop = getResources().getDrawable(R.drawable.btn_check_buttonless_on);
btnByCust.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
btnByCust.setCompoundDrawablesWithIntrinsicBounds(null, drawableTop , null, null);
}
});
2
我使用此代码使用的“Theme.Holo”按钮,一个“自定义图像”左边,并用是从不同的方式调用的函数改变它(图像)。
protected void app_dibujarLogojuego() {
if(bitmaplogojuego!=null){
bitmaplogojuego.recycle();
bitmaplogojuego=null;
}
Drawable LOGO = null;
if(verjuego.equals("COSA1")){ LOGO = getResources().getDrawable(R.drawable.img_logo_COSA1); }
if(verjuego.equals("COSA2")){ LOGO = getResources().getDrawable(R.drawable.img_logo_COSA2); }
if(verjuego.equals("COSA3")){ LOGO = getResources().getDrawable(R.drawable.img_logo_COSA3); }
if(verjuego.equals("COSA4")){ LOGO = getResources().getDrawable(R.drawable.img_logo_COSA4); }
BUTTON_DECLARED_ID.setCompoundDrawablesWithIntrinsicBounds(LOGO, null , null, null);
}
0
btn.setBackgroundResource(R.drawable.your_image_name_here);
31
Drawable top = getResources().getDrawable(R.drawable.image);
button.setCompoundDrawablesWithIntrinsicBounds(null, top , null, null);
相关问题
- 1. 在运行时设置href属性
- 2. 在运行时设置类属性
- 3. 在运行时设置sample_variables属性
- 4. 在运行时Log4Php属性设置
- 5. 在运行时设置点属性?
- 6. 如何在运行时在Converter对象上设置属性
- 7. 设置属性@运行时间
- 8. 设置属性在运行时属性的类别
- 9. 如何使用javaScript在运行时设置HTML属性值?
- 10. 如何在运行时将rowstate属性设置为Deleted?
- 11. 如何在运行时设置对象的各种属性?
- 12. 如何在运行时设置winform控件属性
- 13. OnpropertyChanged在运行时添加属性设置器
- 14. 在运行时替换属性设置器方法
- 15. 机器人expandableListView - 在运行时
- 16. 设置一个计算属性的从属键在运行时
- 17. 在运行时构建TcxGrid时将TcxSpinEdit属性设置为列
- 18. 如何设置本机对象属性
- 19. 在运行时如何在运行时更改属性值
- 20. 设置人物属性
- 21. 在运行时在代码中设置布局属性
- 22. 在Heroku上运行时在beforeSave上设置一些Parse.User属性
- 23. 如何在SSIS中设置连接管理器脱机属性设置为False
- 24. 设置运行线程的属性
- 25. QML:SequencialAnimation的运行属性设置为false,但仍在运行
- 26. 在运行时设置序列化属性
- 27. 设置XAML属性在运行时会被覆盖吗?
- 28. 在运行时为控件设置Validation.Error属性
- 29. 我可以在运行时设置StructLayout的size属性吗?
- 30. 在Web应用程序中设置运行时属性
该方法非常正确,但我想设置资源ID代替drawable。有没有办法做同样的事情? – Maneesh 2011-02-07 09:46:53
是。使用资源resources = getResources(); Drawable drawable = resources.getDrawable(id); – 2011-02-07 09:52:50
Tanmay,我正在尝试这样做,我仍然不确定如何使用代码设置drawableTop。我看到如何得到一个可绘制的,但如何将它设置在按钮上? – Otto 2011-03-01 19:36:51