2011-08-13 24 views
9

Tôi đang xem Hướng dẫn về Notepad trên trang web của nhà phát triển Android và nhận thấy rằng SimpleCursorAdaptor không còn được dùng nữa.Thay thế cho SimpleCursorAdapter?

Các nhà xây dựng mới

public SimpleCursorAdapter (Context context, int layout, 
    Cursor c, String[] from, int[] to, int flags) 

chỉ có sẵn trong API 11.

Việc thay thế được đề xuất là sử dụng LoadManager với một CursorLoader, nhưng những đòi hỏi cũng API 11. Vì vậy, những gì có thể thay thế SimpleCursorAdapter trong API 10, tức là làm thế nào nên Step 12 of the tutorial được thực hiện bằng cách sử dụng một phương pháp không được chấp nhận?

Trả lời

19

Xin lưu ý rằng việc không dùng làm không áp dụng đối với tất cả các SimpleCursorAdapter, chỉ một của các nhà thầu.

Nếu bạn muốn sử dụng Trình tải từ API 11, bạn có thể lấy thư viện tương thích (xem: http://developer.android.com/sdk/compatibility-library.html). Điều này cung cấp một backport tương thích với các thiết bị API cấp 4 trở lên.

EDIT:

Nếu bạn vẫn đang phải đối mặt với lỗi sau khi sử dụng thư viện tương thích, sau đó bạn chỉ cần thay thế

import android.widget.SimpleCursorAdapter; 

với

import android.support.v4.widget.SimpleCursorAdapter; 
+1

Hi elevine, như xa như Tôi có thể nói rằng chỉ có 2 nhà xây dựng, một trong số đó yêu cầu API 11. Vì vậy, việc sử dụng các phương thức khác về cơ bản có nghĩa là một ứng dụng được nhắm mục tiêu theo API 10 sho uld không sử dụng 'SimpleCursorAdapter', phải không? Hay tôi đang thiếu thứ gì đó ở đây? –

+1

Không hoàn toàn. Việc * đúng * cần thực hiện trong trường hợp của bạn là sử dụng LoaderManager và CursorLoader qua Thư viện tương thích mà tôi đã cung cấp liên kết. Nếu không, bạn * có thể * sử dụng hàm tạo không được chấp nhận, nó không được khuyến khích. – elevine

+0

Điều này có vẻ lạ. Tôi chỉ bắt đầu chơi xung quanh với nó và tự hỏi tại sao họ sẽ khấu hao các nhà xây dựng duy nhất làm việc với các điện thoại (API 11 là tổ ong, đó là máy tính bảng) và không cung cấp một Constructor không khấu hao. – Nicholas