这是一个愚蠢的问题,但我正处于一个应用程序的中间,我想在其中开发一个布局:
此布局垂直和水平滚动。我想在该表视图下进行滚动视图,但是如何使它也可以水平滚动。这些数据来自网络服务,所以我不知道会有多少数据。
所以请指导我。
答案 0 :(得分:1)
水平和垂直滚动都是糟糕的用户体验。我所吸引的是只有一个,我在你的例子中看到的是横向的。如果必须同时创建一个ListView并在创建单元格时将其创建为适用于水平ScrollView作为广告的广告,并为水平ScrollView充气视图子项。
答案 1 :(得分:0)
使用两个滚动视图不是一个好主意。但如果需要,你可以做一件事:
创建XML布局:
<ScrollView
android:id="@+id/scrollview_vertical_table"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:ignore="UselessParent" >
<TableLayout
android:id="@+id/tablelayout"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:stretchColumns="*" >
</TableLayout>
</HorizontalScrollView>
</LinearLayout>
</ScrollView>
在此表中以编程方式插入记录或行:
TableLayout tableLayoutTransactionLineHeading = (TableLayout) findViewById(R.id.tablelayout);
for(int j=0; j<rows; j++){
TableRow tableRow = new TableRow(this);
tableRow.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
TextView lineno = new TextView(this);
lineno.setText(lineNo[j]);
lineno.setPadding(10, 10, 10, 10);
lineno.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT));
tableRow.addView(lineno);
View v = new View(this);
v.setLayoutParams(new TableRow.LayoutParams(1, TableRow.LayoutParams.MATCH_PARENT));
v.setBackgroundColor(Color.rgb(50, 50, 50));
tableRow.addView(v);
tableLayout.addView(tableRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT,0f));
}
希望这会对你有所帮助。