Burada belgelere başına Mono Android uygulamasında bir arama iletişim uygulamak çalışıyorum: http://developer.android.com/guide/topics/search/search-dialog.htmlArama Diyalog Mono Android
Ben kullanıcı arama yapmak mümkün olmalıdır bir etkinliği vardır:
[Activity (Label = "MyActivity", MainLauncher = true, Icon = "@drawable/icon", Theme = "@style/MyStyle")]
[MetaData ("android.app.default_searchable", Value = ".SearchActivity")]
public class MainActivity : BaseActivity {...
Ben (ağır kaldırma olur) aranabilir aktiviteye sahiptir:
[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 { ...
Ve ben searchable.xml vardır:
<?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>
Telefondaki arama tuşuna MainActivity'de bastığımda hiçbir şey olmuyor - iletişim kutusu yok. Sorunumun çalışma zamanında AndroidManifest.xml dosyasına nasıl çevrildiğini düşünüyorum ama emin değilim.
GÜNCELLEME 2012/01/03: Burada en temel unsurla distile bir proje gönderdiniz. Android'inizdeki arama düğmesine basın ve SearchDialog'u görmelisiniz ama görünmüyor: Demo Project Here
Maalesef cevabı kabul etmek için çok bekledim. Bu çözüm işe yaramadı ancak bazı bilgiler eksikti. Her şeyden önce, Google Dokümanlar, Etkinlik adınızı bir "." Ile ön ekleyerek ima eder. görünüşe göre yanlış olanı tam olarak nitelendirecek. İkincisi, isim alanı küçük harf olmalıdır. Zaten sınıf adını tam olarak nitelendirmeyi denedim, ancak isim-alanımın içinde büyük harf karakterleri olduğu için işe yaramadı. Bunun neden böyle olacağını anlamıyorum. – dubj
Java, indirilecek ad alanlarına ihtiyaç duyduğundan, Android için Mono, bunu sahne arkasına çevirir. Bu durumda, Java tam nitelikli sınıf adını kullanmanız gerekiyordu. Proje özelliklerinde kullanılacak ad alanını özelleştirebilir ve neyin üretildiğini görmek için obj/Debug/android klasöründe paketlemede üretilen AndroidManifest.xml dosyasını her zaman kontrol edebilirsiniz. –
Java ad alanları veya oluşturulan manifest dosyasının nasıl bulunacağını bilmiyordum. Bakmaya çalıştığım (apk'de paketlenmiş) ikili formattaydı. Bu çok yardımcı oldu, teşekkürler! – dubj