Я хотел бы использовать свой собственный расширенный класс ProgressBar в Widget. Я создал действительно простой MyProgressBar, и если я помещу это в стандартный макет активности, он работает. Конечно, я также установил атрибут стиля в "? Android: attr / progressBarStyleHorizont" в свойстве MyProgressBar в конструкторе.
Но если я сделаю то же самое и поместу его в макет виджета, это хорошо видно в дизайнере макетов в затмении, однако виджет не работает в трагете. На целевом устройстве отображается только сообщение «Проблема при загрузке виджета» вместо макета виджета ....
Исходный код MyProgressBar находится здесь:
открытый класс MyProgressBar расширяет ProgressBar {
public MyProgressBar(Context context) {
super(context);
}
public MyProgressBar(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyProgressBar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected synchronized void onDraw(Canvas canvas) {
// First draw the regular progress bar, then custom draw our text
super.onDraw(canvas);
}
}