2014-02-18 2 views
0

Я пытаюсь создать макет, который показывает текущие 3-часовые уроки вместе с указанием времени и даты с номером номера.создание динамического масштабируемого макета на основе содержимого

возможные экраны: enter image description here

Номер и дата/время всегда статичная наверху, а остальное будет динамическим из вызовов в SQL из JSON.

data = idleResponse.getJSONArray("lecture"); 
       ArrayList<String> lects = new ArrayList<String>(); 
       for (int i = 0; i < data.length(); i++) { 
        JSONObject jObj = data.getJSONObject(i); 
        String time = jObj.getString("startTime"); // to do.substring(0, 4); 
        String moduleName = jObj.getString("moduleName"); 
        lects.add(time + " " + moduleName); 
       }    
       String[] lectureList = new String[lects.size()]; 
       for (int i = 0; i<lects.size();i++){ 
        // fill with data 
        lectureList[i] = lects.get(i); 
       }       
       lecture.setText("Upcomming Lectures:"); 
       //set to list view 
       ListView listitems=(ListView)findViewById(R.id.listView1); 
       ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,lectureList); 
       listitems.setAdapter(adapter); 

Я пытался осуществить это с учетом списка, однако он просто сжимается до небольшого участка экрана в зависимости от количества элементов.

enter image description here

, как вы можете видеть это просто сжимается вниз.

Мне было интересно, какой будет лучший тип макета для использования в этом типе проблемы, все мои макеты довольно простые, и что-то вроде этого кажется довольно сложной задачей для меня.

ответ

1

Вам нужно будет написать собственный адаптер для просмотра списков и использовать весовое свойство для размещения каждой строки

Смежные вопросы