私はを持っていて、次のコードで適切に入力されているメソッドをListView
オーバーライドしています。使用しないgetView
場合は動作しますが、使用するとコードの後にエラーが表示されます。オーバーライドするときにフィルタリングを有効にするにはどうすればよいですか?adapter.getFilter().filter(s)
getView
lv.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.activity_list_item,stringArray)
{ @Override
public View getView(int position, View convertView, ViewGroup parent)
{View row= super.getView(position, convertView, parent);
View row=convertView;
if(position==5){
row = mLayoutInflater.inflate(R.layout.list_header, null);
final TextView sectionView = (TextView) row.findViewById(R.id.list_item_section_text);
sectionView.setText(myList.get(position));
}
return row;
}
});
myFilter.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
adapter.getFilter().filter(s);
});
エラーjava.lang.NullPointerExceptionatcom.android.testdatabase.Listsort $ 2.onTextChanged(Listsort.java:215)at android.widget.TextView.sendOnTextChanged(TextView.java:6131)at android.widget.TextView.handleTextChanged(TextView。 java:6172)at android.widget.TextView $ ChangeWatcher.onTextChanged(TextView.java:6316)at> android.text.SpannableStringBuilder.sendTextChange(SpannableStringBuilder.java:889)at android.text.SpannableStringBuilder.change(SpannableStringBuilder.java: 352)android.text.SpannableStringBuilder.change(SpannableStringBuilder.java:269)で
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:432)at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:409)at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:28)at> android.view .inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:583)at> android.view.inputmethod.BaseInputConnection.setComposedText(BaseInputConnection.java:384>)at> com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.j> ava:292)at> com.android.internal.view.IInputConnectionWrapper $ MyHandler.handleMessage(IInputConnection> Wrapper.java:73)at android.os.Handler.dispatchMessage(Handler.java:99)atandroid.os.Looper。 android.app.ActivityThread.main(ActivityThread.java:でloop(Looper.java:123)4627)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:521)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit。 java:868)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)at dalvik.system.NativeStart.main(ネイティブメソッド)