0

ウィジェット(つまりListGrid)にマップする必要のあるすべてのフィールドを明示的に指定せずに、ある種のバインディングを作成できるかどうか疑問に思っています。

現在、私は次のことを行っています。まず、すべてのJSONオブジェクトのフィールドを読み取り、これらのフィールドを次のようにCategoryRecordオブジェクトに配置します。

        public class CategoryRecord extends Record {

                public CategoryRecord(String displayName, String id) {
                    setDisplayName(displayName);
                    setId(id);
                }

                private void setId(String id) {
                    setAttribute("id", id);

                }

                public String getId() {
                    return getAttributeAsString("id");
                }
    private void setDisplayName(String displayName) {
            setAttribute("displayName", displayName);

        }

        public String getDisplayName() {
            return getAttributeAsString("displayName");
        }
 }

次に、CategoryRecord []オブジェクトを返し、それをListGridに配置します。しかし、アプリケーション開発者が「id」フィールドを「categoryId」に変更するか、完全に削除することにした場合はどうなりますか。このようなことが起こるたびに、手動でコードを変更する必要がありますか?または、JSONオブジェクト全体を取得し、そのフィールドを取得して、名前を指定せずに必要な場所に配置する方法はありますか。

前もって感謝します!

4

1 に答える 1

1

JSON オブジェクトのプロパティを繰り返し処理し、それぞれに対して ListGridField オブジェクトを作成するだけです。

于 2012-09-11T21:13:11.973 に答える