0

リストビューがありますが、アイテムをクリックしたときにのみ表示されます。

これは私のコードです:

    MenuListItem selectedItem;

    List<MenuListItem> menuItemList = new ArrayList<MenuListItem>();
        menuItemList.addAll(resultResidents);

        // Show dialog with list of menuListItems
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Selecteer resident");
        builder.setIcon(contactIcon);

        builder.setNegativeButton("Cancel",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.cancel();
                    }
                });

        final ArrayAdapter<MenuListItem> arrayAdapter = new ArrayAdapter<MenuListItem>(
                this, android.R.layout.simple_list_item_1,android.R.id.text1, menuItemList);

        builder.setAdapter(arrayAdapter,
                    new DialogInterface.OnClickListener() {

                        public void onClick(DialogInterface dialog, int item) {
                            selectedItem = arrayAdapter.getItem(item);
                            dialog.dismiss();
                            finish();
                        }
                    });

        AlertDialog alert = builder.create();
        alert.show();

これは menuItemList クラスです:

public class MenuListItem {

private String itemID,itemName;

public MenuListItem(String itemID, String itemName)
{
    this.itemID = itemID;
    this.itemName = itemName;
}

public String getItemID() {
    return itemID;
}

public void setItemID(String itemID) {
    this.itemID = itemID;
}

public String getItemName() {
    return itemName;
}

public void setItemName(String itemName) {
    this.itemName = itemName;
}

@Override
public String toString() {
    return this.itemName;
}
}

何か助けはありますか?

4

1 に答える 1

1

テキストの色が背景に溶け込んでいるため、アイテムは表示されません。これは、Android レイアウトのスタイリングの一部に関するバグです。Android の以降のバージョンでこれを修正しましたが、この問題が発生するレイアウトがまだいくつかあります。

問題を解決するために、テキストが背景に溶け込むのを防ぐために、カスタム フォントの色を使用して独自の simple_list_item を作成するだけです。

于 2012-09-28T21:10:52.337 に答える