У меня есть старое имплантация, которая использует записи из базы данных и использует объект курсора для заполнения списка. Но в новой реализации у меня есть многомерный массив строк. С 12 столбцами и переменным числом строкиПреобразование многомерного массива строк в курсор
String[][] detailsarray;
Мне нужно преобразовать этот массив строк в объект курсора, чтобы я мог повторно использовать старый код.
Используется, чтобы открыть новый фрагмент с адаптером список
private void callProductListFragment(Cursor cursor) {
productListFragment = new ProductListFragment(cursor);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.addToBackStack("list");
ft.add(R.id.fl_container, productListFragment, "FragList").commit();
}
---ProductListFragment.java
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.product_list_fragment,container, false);
product_list = (ListView) view.findViewById(R.id.product_list);
ProductAdapter productAdapter = new ProductAdapter(getActivity(), cursor, false);
product_list.setAdapter(productAdapter);
product_list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Cursor cursor = ((CursorAdapter) parent.getAdapter()).getCursor();
cursor.moveToPosition(position);
ProductObject productObject = new ProductObject(String.valueOf(cursor.getInt(cursor.getColumnIndex(ProductsData._ID))),cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_ID)),cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_TITLE)),cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_NAME)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_DESC)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_LOCATION)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_ADDRESS)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_TYPE)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_DEALER_NO)), cursor.getString(cursor.getColumnIndex(ProductsData.PRODUCT_IMAGE)));
productDeatailsFragment = new ProductDeatailsFragment(productObject);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.addToBackStack("details");
ft.add(R.id.fl_container, productDeatailsFragment, "FragList").commit();
}
});
return view;
}
Как я могу сделать this..Please совет.
попробовать 'MatrixCursor' я нашел подобный вопрос http://stackoverflow.com/questions/18290864/create-a- cursor-from-hardcoded-array-вместо-db – Nooh
@Nooh Спасибо .. Но как я могу преобразовать, получить объект-курсор из «MatrixCursor» – techno
проверить мой ответ, – Nooh