【问题标题】:How can I acess localised strings in a custom search suggestions provider?如何访问自定义搜索建议提供程序中的本地化字符串?
【发布时间】:2012-09-11 12:59:42
【问题描述】:

我的应用程序SearchView 有一个自定义搜索建议提供程序。建议显示得很好,但建议名称是硬编码的。我想从我的strings.xml 文件中获取本地化字符串,但我需要访问我的搜索提供程序中没有的活动上下文。

按照 Android 开发者文档中的建议,使用 searchables.xml 文件将我的搜索提供程序映射到我的 SearchView。这是我的可搜索配置:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:hint="artist, track informations..."
    android:label="@string/app_name"
    android:queryAfterZeroResults="true"
    android:searchSuggestAuthority="com.example.testapp.providers.QuickSearchProvider"
    android:searchSuggestSelection=" ?"
    android:searchSuggestThreshold="3" />

...这是实际的搜索提供程序:

public class QuickSearchProvider extends SearchRecentSuggestionsProvider {

  public final static String AUTHORITY = "com.example.testapp.providers.QuickSearchProvider";
  public final static int MODE = DATABASE_MODE_QUERIES | DATABASE_MODE_2LINES;

  public QuickSearchProvider() {
    setupSuggestions(AUTHORITY, MODE);
  }

  public Cursor query(Uri uri, String[] projection, String sel,
      String[] selArgs, String sortOrder) {

      MatrixCursor cursor = new MatrixCursor(new String[] { 
          BaseColumns._ID,
          SearchManager.SUGGEST_COLUMN_TEXT_1,
          SearchManager.SUGGEST_COLUMN_TEXT_2,
          SearchManager.SUGGEST_COLUMN_ICON_1,
          SearchManager.SUGGEST_COLUMN_INTENT_ACTION});

      cursor.addRow(new Object[] { 0, "Plants", "Search Plants", android.R.drawable.ic_menu_search, Search.SEARCH_PLANTS_ACTION});
      cursor.addRow(new Object[] { 1, "Birds", "Search Birds", android.R.drawable.ic_menu_search, Search.SEARCH_BIRDS_ACTION });

      return new MergeCursor(new Cursor[] { cursor });
  }

}

我想从我的字符串资源文件中获取“植物”和“鸟类”等术语的本地化字符串。

我该怎么做?

谢谢。

【问题讨论】:

    标签: java android android-resources


    【解决方案1】:

    尝试类似:

    字符串值 = this.getContext().getResources().getString(R.string.Plants)

    【讨论】:

    • 哥们,就这么简单吗?!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多