I need to fetch data from database and set in autocompletetextview but i got error which i try to fix but unable to fix it. and also i am trying to fetch all data by using Id that will be selected through auto complete text view when the user enters itemcode.
In Fragment
AutoCompleteTextView ItemCode;
ItemCode=(AutoCompleteTextView)rootView.findViewById(R.id.purchase_xml_item_code);
helper=new DatabaseHelper(getActivity());
LoadeAutoCompleteItemCode();
In LoadeAutoCompleteItemCode
private void LoadeAutoCompleteItemCode() {
final String[] autoCompleteItemeCode = helper.AutoCompleteItemeCode();
ArrayAdapter adapter = new ArrayAdapter(getActivity(), android.R.layout.simple_list_item_1, autoCompleteItemeCode);
ItemCode.setAdapter(adapter);
ItemCode.setThreshold(1);
ItemCode.dismissDropDown();
ItemCode.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getActivity(), (CharSequence) parent.getItemAtPosition(position), Toast.LENGTH_SHORT).show();
}
});
}
in my Database Helper AutoCompleteItemCode
public String[] AutoCompleteItemeCode() {
try {
String arrData[] = null;
SQLiteDatabase db;
db = this.getReadableDatabase();
String strSQL = "SELECT C.ID FROM " + Verbs.ITable_Name+" AS C ";
Cursor cursor = db.rawQuery(strSQL, null);
if (cursor != null) {
if (cursor.moveToFirst()) {
arrData = new String[cursor.getCount()];
int i = 0;
do {
arrData[i] = cursor.getString(0);
i++;
} while (cursor.moveToNext());
}
}
cursor.close();
return arrData;
} catch (Exception e) {
return null;
}
}
In My XML File
<AutoCompleteTextView
android:id="@+id/purchase_xml_item_code"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignBottom="@+id/imageView_itemcode"
android:layout_toRightOf="@+id/imageView_itemcode"
android:background="@color/editTextBG"
android:hint="@string/purchase_item_code"
android:inputType="text"
android:paddingLeft="20dp"
android:textSize="25sp" />
My Error Logs
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NullPointerException
at com.example.admin6.finaldemo.Fragment.Transaction.Purchase.LoadeAutoCompleteItemCode(Purchase.java:189)
at com.example.admin6.finaldemo.Fragment.Transaction.Purchase.onCreateView(Purchase.java:72)
at android.support.v4.app.Fragment.performCreateView(Fragment.java:2439)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1460)
at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802)
at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625)
at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411)
at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:4987)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
at dalvik.system.NativeStart.main(Native Method)
I/Process: Sending signal. PID: 32197 SIG: 9
Application terminated.
As Error logs Purchase.java:189 on this line indicates here
final String[] autoCompleteItemeCode = helper.AutoCompleteItemeCode();