![](/img/trans.png)
[英]Mono Android - Display dialog even when application is not in focused
[英]Search Dialog in Mono Android
我正在尝试按照此处的文档在Mono Android应用中实现搜索对话框: http : //developer.android.com/guide/topics/search/search-dialog.html
我有一个用户应该可以搜索的活动:
[Activity (Label = "MyActivity", MainLauncher = true, Icon = "@drawable/icon", Theme = "@style/MyStyle")]
[MetaData ("android.app.default_searchable", Value = ".SearchActivity")]
public class MainActivity : BaseActivity {...
我有一个可搜索的活动(繁重的地方会发生):
[Activity(Theme = "@style/MyStyle", Label = "Searchable", LaunchMode = Android.Content.PM.LaunchMode.SingleTop)]
[IntentFilter(new[] { Intent.ActionMain }, Categories = new[] { Intent.CategoryLauncher, Intent.ActionSearch })]
[MetaData("searchable", Resource = "@xml/searchable")]
public class SearchActivity : BaseActivity { ...
我有我的searchable.xml:
<?xml version="1.0" encoding="utf-8"?>
<searchable
xmlns:android="http://schemas.android.com/apk/res/android"
android:label="MyLabel"
android:hint="Search Products">
</searchable>
当我在MainActivity中按下手机上的搜索键时,没有任何反应 - 没有对话框。 我认为我的问题在于如何在运行时将属性转换为AndroidManifest.xml但我不确定。
更新2012年1月3日:我已经发布了一个项目,该项目在这里被提炼为最基本的元素。 按Android上的搜索按钮,您应该看到SearchDialog,但它没有出现: Demo Project Here
问题出在MainActivity
的[MetaData]
属性中。 如果您提供了类的正确命名空间版本,则会正确显示搜索对话框:
[MetaData ("android.app.default_searchable", Value = "searchdialogtest.SearchActivity")]
public class MainActivity : BaseActivity {
在你的serachable.xml中你不能有一个常量字符串作为名称和提示......它们应该动态链接@string/my_app_name
@string/my_hint
一切正常!
我觉得在清单文件中,searachable元数据标签不合适(android:name =“android.app.searchable”)
示例清单 - MainActivity标记 -
<activity android:name=".MainActivity"> <meta-data android:name="android.app.default_searchable" android:value="pckname.SearchClass"/> </activity>
SearchActivity标签 -
<activity android:name=".SearchActivity" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" /></activity>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.