【问题标题】:query sms text body and show in listview查询短信正文并在列表视图中显示
【发布时间】:2014-06-25 15:48:41
【问题描述】:

我想根据在搜索视图中输入的字符串过滤我的应用程序的收件箱视图。 因此,如果用户输入“How”,过滤器应该得到所有包含“How”的文本 这是我写的代码:

int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
    AutoCompleteTextView  textView = (AutoCompleteTextView) searchView.findViewById(id);
    textView.setTextColor(Color.WHITE);

    final Uri inboxURI = Uri.parse("content://sms/");
    final String[] reqCols = new String[] {"_id","address","body" };

    Cursor c = cr.query(inboxURI, reqCols, null, null, null);
    final SimpleCursorAdapter sadapter = new SimpleCursorAdapter(this, R.layout.list_row, c, new String[] {"address", "body" }, new int[] {R.id.phone_number,R.id.text_msg});

    textView.setAdapter(sadapter);

    sadapter.setFilterQueryProvider(new FilterQueryProvider() {
        public Cursor runQuery(CharSequence constraint) {                           
            return getContentResolver().query(inboxURI, reqCols, "body" + " LIKE '" + constraint + "%'", null, null);
        }
    });

但在这里,如果我输入“How”,过滤器只会返回以“How”开头的文本。我想要在其中任何位置包含此字符串的所有文本。 需要有关如何创建查询以获取结果的帮助。

【问题讨论】:

    标签: android android-listview simplecursoradapter searchview


    【解决方案1】:

    您的查询 like constraint% ... 将其更改为 like %constraint%(注意附加的 %

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-25
      • 2018-07-30
      • 1970-01-01
      • 2018-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多