Cara optimal untuk memungkinkan pengguna memilih gaya saat dijalankan - Fleksibel

Apa yang saya coba lakukan: memungkinkan pengguna untuk memilih palet warna untuk komponen khusus dengan memilih dari menu drop down dengan berbagai ikon.

Saya memiliki bagian menu tarik-turun, tetapi saya mencoba memahami cara terbaik menangani berbagai gaya dalam kode saya. Idealnya saya ingin dapat memuat gaya pada waktu proses, tetapi saya tidak melihat keuntungan besar dengan ini jadi saya sekarang berpikir untuk mengompilasi dalam semua gaya. Namun, sepertinya saya tidak dapat menemukan cara yang layak untuk menyusun kode. Meretasnya tampaknya cukup mudah/cepat, tetapi ada cara yang lebih baik daripada memiliki sejumlah besar nilai yang dapat diindeks melalui beberapa indeks yang terkait dengan setiap ikon - yuck!

Ingin sekali mendengar pendapat Anda atau melihat petunjuk apa pun tentang cara yang jelas untuk menangani hal ini.

Terima kasih!

fred


person fred august    schedule 28.06.2010    source sumber


Jawaban (2)


Saya akan mendefinisikan sekumpulan nama gaya dalam CSS, lalu Anda dapat menggunakan kumpulan nama gaya untuk memberikan nilai pada kontrol pemilih gaya Anda, seperti:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Style>
        .style1{color:red;}
        .style2{color:green;}
        .style3{color:blue;}
    </mx:Style>
    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;

            public static const styleNames:ArrayCollection = 
                    new ArrayCollection(['style1', 'style2', 'style3']);
        ]]>
    </mx:Script>
    <mx:ComboBox 
        id="styleCombo" 
        styleName="{styleCombo.value}" 
        dataProvider="{styleNames}" 
    />
</mx:Application>
person Ryan Lynch    schedule 28.06.2010

Cara optimal untuk mencapai hal ini adalah dengan mengkompilasi beberapa file CSS+Swf(aset) dan kemudian memuatnya saat runtime sesuai dengan apa yang dipilih pengguna.

Sejauh ini, ini adalah praktik terbaik yang ada, saya menggunakannya untuk aplikasi besar dan aplikasi kecil dan ini unggul di atas setiap solusi lain yang dapat saya pikirkan.

semoga beruntung

person KensoDev    schedule 29.06.2010