Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 片段中的SearchView错误_Java_Android - Fatal编程技术网

Java 片段中的SearchView错误

Java 片段中的SearchView错误,java,android,Java,Android,SV(变量)是在列表视图中提供过滤功能的搜索视图…应用程序在加载时退出…在我删除搜索视图代码后,应用程序运行良好…请帮助。。我被卡住了 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View v=inflater.inflate(R.layout.contactfragment,

SV(变量)是在列表视图中提供过滤功能的搜索视图…应用程序在加载时退出…在我删除搜索视图代码后,应用程序运行良好…请帮助。。我被卡住了

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

            View v=inflater.inflate(R.layout.contactfragment,container,false);

            this.lstNames = (ListView) v.findViewById(R.id.lists);
            sv=(SearchView)v.findViewById(R.id.searchContactLIST);

            // Read and show the contacts
            showContacts();


            return v;

        }


        private void showContacts() {
            // Check the SDK version and whether the permission is already granted or not.
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && ContextCompat.checkSelfPermission(getActivity(),Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
                requestPermissions(new String[]{Manifest.permission.READ_CONTACTS}, PERMISSIONS_REQUEST_READ_CONTACTS);
                //After this point you wait for callback in onRequestPermissionsResult(int, String[], int[]) overriden method
            } else {
                // Android version is lesser than 6.0 or the permission is already granted.


                List<String> contacts = getContactNames();
                //  String[] arr_contact=contacts.to
                List<String> contacts_no = getContactNo();


                String[] strarray = new String[contacts.size()];
                contacts.toArray(strarray);


                String[] strarray2 = new String[contacts_no.size()];
                contacts_no.toArray(strarray2);


                // ArrayAdapter<String> adapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, contacts);
                // lstNames.setAdapter(adapter);

                adapter = new GetContactAdapter(getContext(), strarray, strarray2);

                lstNames.setAdapter(adapter);

            sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                    @Override
                    public boolean onQueryTextSubmit(String text) {

                        return false;
                    }

                    @Override
                    public boolean onQueryTextChange(String newText) {

                        adapter.getFilter().filter(newText);

                        return false;
                    }
                });



            }
        }
public View onCreateView(LayoutInflater充气机、@Nullable ViewGroup容器、@Nullable Bundle savedInstanceState){
视图v=充气机。充气(右布局。触点碎片,容器,假);
this.lstNames=(ListView)v.findViewById(R.id.lists);
sv=(SearchView)v.findViewById(R.id.searchContactLIST);
//阅读并显示联系人
showContacts();
返回v;
}
私人通讯录(){
//检查SDK版本以及权限是否已授予。
if(Build.VERSION.SDK\u INT>=Build.VERSION\u code.M&&ContextCompat.checkSelfPermission(getActivity(),Manifest.permission.READ\u CONTACTS)!=PackageManager.permission\u已授予){
requestPermissions(新字符串[]{Manifest.permission.READ\u CONTACTS},PERMISSIONS\u REQUEST\u READ\u CONTACTS);
//在此之后,您将等待onRequestPermissionsResult(int,String[],int[])重写方法中的回调
}否则{
//Android版本低于6.0或已授予权限。
列出联系人=getContactNames();
//字符串[]arr_contact=contacts.to
列出联系人_no=getContactNo();
String[]strarray=新字符串[contacts.size()];
联系人:toArray(strarray);
String[]strarray2=新字符串[联系人编号大小()];
联系电话号码toArray(strarray2);
//ArrayAdapter=新的ArrayAdapter(getContext(),android.R.layout.simple\u list\u item\u 1,contacts);
//lstNames.setAdapter(适配器);
适配器=新的GetContactAdapter(getContext(),strarray,strarray2);
lstNames.setAdapter(适配器);
sv.setOnQueryTextListener(新的SearchView.OnQueryTextListener(){
@凌驾
公共布尔值onQueryTextSubmit(字符串文本){
返回false;
}
@凌驾
公共布尔onQueryTextChange(字符串newText){
adapter.getFilter().filter(newText);
返回false;
}
});
}
}

您指的是哪个searchview代码?发布您的logcat崩溃..报告查看showContacts()中的搜索视图代码…解决了问题…现在运行时没有错误,但它不会搜索任何内容。。。