Boa maneira de manter a lista do menu de seleção de vários níveis no J2ME
Pergunta
Preciso de uma boa maneira de manter vários dados em nível de formulário para seleção de menu.Por exemplo, se eu tiver A e B, cada um pode ter 1 2 3, um A1 A2 A3 B B1 B2 B3
E isso pode continuar por muito tempo, para que eu pudesse ter A -> A1 -> A1.1 -> A1.1.1 -....Eu tenho a seguinte aula em vigor, funciona bem, mas suspeito que poderíamos ter melhor.
Eu só preciso realizar a seleção em uma árvore de seleção como o Widget, mas cada nível de seleção vem em outra forma (em J2ME)
import java.util.Vector;
public class Tag {
private String tag;
private Vector childTags;
private Tag parent;
Tag(String tag, Vector childtag)
{
this.tag = tag;
this.childTags= childTags;
}
public void setChildTags(Vector childTags) {
this.childTags = childTags;
}
public Vector getChildTags() {
return this.childTags;
}
public String getTag() {
return this.tag;
}
public String toString(int depth)
{
String a ="";
if(depth==0)
{
a = a + this.getTag();
}
if(this.getChildTags()!= null)
{
for(int k=0;k <this.getChildTags().capacity(); k++)
{
for (int i=0; i<depth; i++ ) {
a = a + ("-");
}
a = a+ ( ((Tag)this.getChildTags().elementAt(k)).toString(depth++));
} }
return a;
}
}
Nenhuma solução correta
Outras dicas
Você pode usar algumas classes para representar seus comandos de menu.Pense em 1 2 3 e A B C como comandos e nas combinações da forma como você os compõe, então, aplicando alguns padrões aqui, você pode usar Command ( http://en.wikipedia.org/wiki/Command_pattern ) e Composto ( http://en.wikipedia.org/wiki/Composite_pattern ).Faça-os trabalhar juntos e será muito mais simples usá-lo e mantê-lo, em vez de um "vetor childTag" misterioso e sujeito a erros.