2011-03-04 29 views
8

Gần đây tôi đã đặt một ứng dụng trên thị trường và tôi đã nhận được đến nay 7 lỗi mà trông giống như sau:ngoại lệ Strange trong ứng dụng

java.lang.IllegalArgumentException: lớp Trạng thái không đúng, mong Xem Nhà nước nhưng đã nhận được lớp android.widget.ProgressBar $ SavedState thay thế. Điều này thường xảy ra khi hai chế độ xem loại khác nhau có cùng một id trong cùng một cấu trúc phân cấp. Id của chế độ xem này là id/0x2. Đảm bảo các chế độ xem khác không sử dụng cùng một id.

Ai đó có thể cho tôi biết cách gỡ lỗi sự cố không? View với id 0x2 - có cách nào để tìm hiểu?

+1

Bạn có thể đăng bố cục của mình không? Nó có thể là bạn có hai thành phần với cùng một id. –

+0

Dường như bạn có thể có hai chế độ xem có cùng giá trị id, hãy kiểm tra lại các tệp xml của bạn. –

Trả lời

0

Sẽ có một ngăn xếp ngăn xếp bên cạnh báo cáo có thể giúp bạn tìm ra dòng mã chính xác.

3

Tôi đã nhận được lỗi này trong các điều kiện sau - Tôi đang thay thế biểu tượng của một mục trong thanh tác vụ (trong trường hợp của tôi là một nút bấm cho nút làm mới) và trong khi ở trạng thái đó, tôi xoay thiết bị . Lỗi này phát sinh từ nó cố gắng khôi phục trạng thái đã lưu của chế độ xem và nhận thấy sự khác biệt giữa những gì được khai báo và những gì được tuần tự hóa.

+0

bạn đã kết thúc bằng cái gì ??? Tôi đang đối mặt với cùng một vấn đề, hãy giúp – user4o01

+1

Khi tôi gán chế độ xem mới cho mục menu, tôi cũng khai báo: 'throbber.getActionView(). setSaveEnabled (false);' (trong đó 'throbber' thuộc loại' MenuItem') . Sau đó, trong phương thức 'onActivityCreated' của mảnh, tôi kiểm tra xem tác vụ bên dưới đã thoát và được xử lý chưa. Nếu nó không có (tức là người dùng vẫn đang chờ phản hồi), tôi khởi tạo lại phiên bản động bằng một lệnh gọi khác là 'throbber.setActionView (getAnimatedRefreshImageView());' 'getAnimatedRefreshView' là phương thức tôi phải quản lý ImageView nên tôi không tính thuế cho người thu gom rác. –

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