我正在尝试创建一个布局,显示当前3小时的课程以及带有房间号的时间和日期。
可能的屏幕:
房间和时间/日期在顶部始终是静态的,其余部分将是来自JSON的SQL调用的动态。
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);
我尝试使用列表视图来实现它,但它只是根据元素的数量缩小到屏幕的一小部分。
你可以看到它只是缩小了。
我想知道什么是最适合这类问题的布局类型,我的所有布局都非常基本,这样的事情对我来说似乎是一个很大的挑战。
答案 0 :(得分:1)
您必须为listview编写自己的适配器,并使用weight属性来布局每行