2014-03-10 2 views
0

Я использую калитку 1.4.17.Я проделал довольно много сообщений на этом, но не мог понять это ясно. Как я могу сделать аккордеон в калитке?Как создать аккордеон в калитке

В основном то, что я ищу, представляет собой таблицу с 1 столбцом и несколькими строками, где каждая строка может быть развернута или свернута, а каждая строка на расширении отображает другую таблицу данных.

ответ

2

Следующий пример кода должен помочь вам приступить к работе. Не стесняйтесь задавать вопросы, если что-то кажется неясным. Конечно, вы можете пойти еще глубже в свой DetailPanel (именно поэтому я бы предложил такой подход)

AbstractRepeater exampleView = new ListView<Object>("exampleView", myList) { 


     @Override 
     protected void populateItem(ListItem<Object> item) { 
      //you can use a own panel, fragment, etc to illustrate your detail view here 
      //you could also use one WebMarkupContainer for visibility - but I'd assume this will get very messy, very soon 
      final DetailPanel detailPanel = new DetailPanel("detailPanel", item.getModel()); 
      detailPanel.setVisible(false); 
      detailPanel.setOutputMarkupPlaceholderTag(true); 
      item.add(detailPanel); 

      //add AjaxLink to switch between the visibilty of the detailView 
      AjaxLink<Void> detailLink = new AjaxLink<Void>("detailLink") { 

       @Override 
       public void onClick(AjaxRequestTarget target) { 
        detailPanel.setVisible(!detailPanel.isVisible()); 
        target.addComponent(detailPanel); 
       } 
      }; 
      item.add(detailLink); 

     } 
    }; 
    add(exampleView); 
Смежные вопросы