我在Android库中创建了一个customView,并从AppCompatEditText扩展而来。在init方法中,我想从我的drawable资源中设置背景。我写这段代码:
public class GrootAnimatedEditText extends AppCompatEditText {
public GrootAnimatedEditText(Context context) {
super(context);
init(context);
}
public GrootAnimatedEditText(Context context, AttributeSet attrs) {
super(context, attrs);
init(context);
}
public GrootAnimatedEditText(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context);
}
private void init(Context context) {
setBackground(R.drawable.roundbg);
}
}
当我放一个点(。)roundbg和任何drawable不建议我。我也使用:
setBackground(context.getResources().getDrawable(R.drawable.roundbg));
//or
setBackground(ContextCompat.getDrawable(context,R.drawable.roundbg));
再次不起作用!如何将drawable设置为我的自定义TextView背景?
****************编辑******************
roundbg.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp" />
<stroke
android:width="1dp"
android:color="#44433A" />
<solid android:color="#FFF" />
</shape>