c#Android设置button背景drawable
时间: 2024-09-11 07:15:58 浏览: 48
C# xamarin android自定义标题栏
在C#中,如果你想给Android应用中的按钮设置背景Drawable,通常是在Activity或Fragment的布局文件(`.xml`)里完成,但你也可以在运行时通过代码动态改变。以下是两种常见的方法:
**1. XML布局文件中设置**:
在`.xml`布局文件(例如`activity_main.xml`)中的按钮元素里,你可以指定`android:background`属性来设置背景图片:
```xml
<Button
android:id="@+id/my_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click me!"
android:background="@drawable/my_background_drawable" />
```
其中`@drawable/my_background_drawable`是一个指向drawable资源文件的引用。
**2. 代码中设置**:
在C#中,你可以找到按钮的视图引用,然后使用`SetBackgroundResource()`方法设置背景:
```csharp
Button button = FindViewById<Button>(Resource.Id.my_button);
Drawable drawable = ResourcesCompat.GetDrawableFromAttributes(Resources, new Android.Graphics.Drawables.DrawableAttribute[] { Android.Resource.Attribute.Background }, Theme);
button.SetBackground(drawable);
```
这里假设`my_button`是你按钮的ID,并且你已经有了一个名为`my_background_drawable`的drawable资源。
注意,在使用代码设置背景时,确保你已经设置了主题(Theme),并且drawable资源已经被应用程序所引用。
阅读全文