初投稿。私はアンドロイドとプログラミング全般に不慣れです。私がしようとしているのは、連絡先リストからのオートコンプリート名でオートコンプリート テキスト ボックスをポップアップさせることです。IE で「john」と入力すると、「John Smith」または連絡先の任意の john と表示されます。コードは基本的なもので、いくつかのチュートリアルから引っ張ってきました。
private void autoCompleteBox() {
ContentResolver cr = getContentResolver();
Uri contacts = Uri.parse("content://contacts/people");
Cursor managedCursor1 = cr.query(contacts, null, null, null, null);
if (managedCursor1.moveToFirst()) {
String contactname;
String cphoneNumber;
int nameColumn = managedCursor1.getColumnIndex("name");
int phoneColumn = managedCursor1.getColumnIndex("number");
Log.d("int Name", Integer.toString(nameColumn));
Log.d("int Number", Integer.toString(phoneColumn));
do {
// Get the field values
contactname = managedCursor1.getString(nameColumn);
cphoneNumber = managedCursor1.getString(phoneColumn);
if ((contactname != " " || contactname != null)
&& (cphoneNumber != " " || cphoneNumber != null)) {
c_Name.add(contactname);
c_Number.add(cphoneNumber);
Toast.makeText(this, contactname, Toast.LENGTH_SHORT)
.show();
}
} while (managedCursor1.moveToNext());
}
name_Val = (String[]) c_Name.toArray(new String[c_Name.size()]);
phone_Val = (String[]) c_Number.toArray(new String[c_Name.size()]);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, name_Val);
personName.setAdapter(adapter);
}
personName は私の autocompletetextbox です。そのため、ピープルアプリから連絡先を手動で入力してエミュレーター(4.2)で使用すると実際に機能しますが、デバイスで使用すると、名前がポップアップしません。ばかげていると思いますが、答えを見つけようとしましたが、どこにも行きません。聞かなければ学べない。
ここにログがあります
12-11 18:35:09.229: I/ActivityManager(578): 表示 12-11 18:35:11.031: I/ActivityManager(578): START u0 {cmp=com.fthatnoise.borrow.me/.AddItem} fromピッド 4153
12-11 18:35:11.161: D/dalvikvm(4153): GC_CONCURRENT 解放 <1K、2% 解放 9648K/9784K、一時停止 5ms+2ms、合計 22ms 12-11 18:35:11.181: D/dalvikvm(4153) : GC_FOR_ALLOC 解放 <1K、2% 解放 9648K/9784K、一時停止 21 ミリ秒、合計 21 ミリ秒 12-11 18:35:11.181: I/dalvikvm-heap(4153): 960016 バイトの割り当てのためにヒープ (フラグメント ケース) を 10.359MB に拡張12-11 18:35:11.201: D/dalvikvm(4153): GC_FOR_ALLOC 解放 0K、2% 解放 10585K/10724K、一時停止 18ms、合計 18ms 12-11 18:35:11.221: D/dalvikvm(4153): GC_CONCURRENT 解放<1K、1% フリー 10637K/10744K、一時停止 3ms+1ms、合計 15ms
12-11 18:35:11.551: I/ActivityManager(578): 表示された com.fthatnoise.borrow.me/.AddItem: +514ms 12-11 18:35:11.571: D/overlay(162): FROM_STATE = OV_BYPASS_3_LAYER TO_STATE = OV_CLOSED 12-11 18:35:11.911: D/overlay(162): FROM_STATE = OV_CLOSED TO_STATE = OV_BYPASS_3_LAYER 12-11 18:35:13.073: D/overlay(162): FROM_STATE = OV_BYPASS_3_LAYER TO_STATE = OV_CLOSED