java - 方法 "onOptionsItemSelected(MenuItem item,LayoutInflater inflater,ViewGroup container)"从未使用过

标签 java android

我正在使用 onOptionsItemSelected 方法来过滤我的 ListView ,但在声明该方法后,我得到了方法从未使用过的异常,我不知道如何使用此方法。请更正我的代码。

我的编程代码如下,

   //I am getting exception here

        public boolean onOptionsItemSelected(MenuItem item,LayoutInflater inflater,ViewGroup container) {
        Log.d("onOptionsItemSelected", "yes");
        switch (item.getItemId()) {
            case R.id.all:
                displayEventInvitationList(inflater,container);
                return true;
            case R.id.event:
                displayEventList();
                return true;
            case R.id.invitation:
                displayInvitationList();
                return true;
            default:
                return super.onOptionsItemSelected(item);

        }

    }
        //method defined here
        public View displayEventInvitationList(LayoutInflater inflater, ViewGroup container) {
        context = getActivity().getApplicationContext();
        view = inflater.inflate(R.layout.chatwindow_tab, container, false);
        sharedpreferences = context.getSharedPreferences(Constants.SHARED_PREFERENCE_NAME,
                Context.MODE_PRIVATE);
        DatabaseHelper dbHelper = new DatabaseHelper(context);
        final UserMO userMO = dbHelper.getRingeeUserData(1);
        new AsyncTask<Void, Void, List<EventMO>>() {
            @Override
            protected List<EventMO> doInBackground(Void... arg0) {
                eventMOs = gson.fromJson(eventDelegates.getAllEventFromUser(userMO, context), new TypeToken<List<EventMO>>() {
                }.getType());
                invitationMOs = gson.fromJson(eventDelegates.getAllEventForUser(userMO, context), new TypeToken<List<EventMO>>() {
                }.getType());
                List<EventMO> groupEventInvitesList = new ArrayList<>();

                for (EventMO eventMO : eventMOs) {
                    groupEventInvitesList.add(eventMO);

                }
                for (EventMO eventMO : invitationMOs) {
                    groupEventInvitesList.add(eventMO);

                }

                return groupEventInvitesList;

            }

最佳答案

i got method never used exception

首先,这是一个警告,而不是异常(exception)。

其次,它从未被使用过,因为没有人调用它。

也许您正在寻求实现 onOptionsItemSelected() on a Fragment ,它具有不同的方法签名。或者,如果这是一项 Activity ,那么它也是 offers onOptionsItemSelected() ,但具有不同的签名。如果删除 LayoutInflater inflaterViewGroup container 参数,您可能会有更好的运气。

关于java - 方法 "onOptionsItemSelected(MenuItem item,LayoutInflater inflater,ViewGroup container)"从未使用过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32653230/

相关文章:

android - 如何在使用 Android 导航图时显示 HomeAsUp

android - 如何从 registerActivityResult 捕获 URI?

java - 如何为在 run() 中具有无限循环的 Runnable java 类编写 UT?

java - 与 WebSphere 和 Spring 集成进行 SSH 配置

java - StringBuffer找到 'start'和 'end'并在它们之间写入任何内容

java - Android 条码扫描仪仅读取条码

java - Java LinkedHashMap 和 TreeMap 中的 equals() 和 hashCode()?

java - 耶拿 - 如何将资源链接到属性?

android - Volley NetworkImageView 清除缓存图片

Android获取Facebook共同好友如何填写USER ID?