2011-10-23 22 views
8

Tôi đang cố gắng để gọi setProgressDrawable trên ProgressBar trong tôi RemoteViews
Tuy nhiên có không xuất hiện để có một phương pháp setDrawable(<view_id>,<method>,<value>) trên RemoveViews Tôi đã thử setBitmap nhưng setProgressDrawable mất một không Drawable một BitmapsetInt cũng không hoạt động.có cách nào để setProgressDrawable trên RemoteViews

Tôi muốn tránh việc tải các tệp xml bố cục tiện ích khác nhau chỉ để xử lý các thanh tiến trình màu khác nhau.

+0

Tôi đồng ý. SDK dường như cho phép tạo một con trỏ tới ProgressBar bằng cách sử dụng LayoutInflator, nhưng không có hành động nào xuất hiện. Cả setProgressDrawable() và cũng không thể đưa raToToFront(), cũng như workaround setProgress-and-setMax-hai lần gây ra sự khác biệt nếu ProgressBar là một thành phần AppWidget. Nó hoạt động như thể có một ngắt kết nối giữa XML bố trí và con trỏ đối tượng trong mã. –

+0

@HunterD ít nhất nó không chỉ cho tôi, vấn đề vẫn còn tồn tại trên ICS là tốt: ( – Rob

Trả lời

1

Không có cách nào để thực hiện việc này. Giải pháp của tôi không phải là tạo các tệp bố cục riêng biệt, nhưng một giải pháp chứa tất cả các ProgressBars khác nhau với các tiến trình khác nhau. Trong đoạn mã, bạn phải chỉ hiển thị một trong số chúng.

Xin lưu ý rằng đối với các phiên bản Android cũ hơn, không được phép gọi setViewVisibility trên thanh Progressbar trực tiếp. Bí quyết là để bọc một LinearLayout đơn giản xung quanh mỗi thanh và để làm cho trình bao bọc này vô hình/nhìn thấy được. Làm việc tốt cho tôi.

Các vấn đề liên quan