프로그래밍 방식으로 TableLayout
/ListView
을 만드는 방법에 대한 여러 게시물을 읽었으므로 여전히 최선의 경로를 확신 할 수 없습니다.프로그래밍 방식으로 수많은 LIstViews 또는 TableLayouts 만들기
내 마음에는 RunTests.java
이라는 클래스가 있습니다. 하나의 테스트 일정에는 수많은 테스트 유형이 포함될 수 있으며 각 테스트 유형마다 결과 테이블이 필요합니다. 그래서 A, B, C, D라는 네 개의 테스트가 있다고 가정 해 보겠습니다.
테스트 A가 완료된 후에 나는 다른 클래스 테스트 열 머리글 및 테스트 행 머리글 배열. 그런 다음 클래스는 결과와 제목을 포함하는 테이블을 반환하고 XML LinearLayout
내에서 보이도록 확장 한 다음 테스트 B로 이동합니다.
그러면 프로세스가 반복되어 다음 테이블이 아래에 표시됩니다. 처음 것, 등등.
어떤 조언이나 예도 좋을 것입니다.
감사 제안 대답에
시도 :이 정의 경우
내가 목록보기에 오류를 받고 있어요, 나는 확실하지 않다. 내가 레이아웃을 기존의 수에 추가 한 XML은 다음과 같습니다 :
private void createTable() {
String[] columns = {"row_header", "column_name1", "column_name2"};
String[] results = {"","2000","98"};
int[] to = { R.id.row_header, R.id.txt1 ,R.id.txt2};
String[] rowHeadings = {"","Bandwidth","QoS"};
List<HashMap<String, String>> data = new ArrayList<HashMap<String, String>>();
for(int i = 0; i < rowHeadings.length; i++){
HashMap<String, String> map = new HashMap<String, String>();
map.put(columns[0], rowHeadings[i].toString());
map.put(columns[1], results[1]);
map.put(columns[2], results[2]);
data .add(map);
}
SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), data, R.layout.runtests, columns, to);
listView.setAdapter(adapter);
}
XML :
<LinearLayout android:id="@+id/resultsLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center|top"
android:layout_marginEnd="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginStart="8dp"
android:background="@drawable/curvedbg"
android:layout_marginTop="10dp"
android:padding="5dp"
android:weightSum="99">
<TextView android:id="@+id/row_header" android:layout_weight="33" />
<TextView android:id="@+id/txt1" android:layout_weight="33"/>
<TextView android:id="@+id/txt2" android:layout_weight="33"/>
</LinearLayout>
고마워요. 제이, 월요일에 다시 돌아가겠습니다. 네가 원하는 걸 얻은 것 같아. 그것은 모두 문자열이 될 것입니다. 이상적으로 배경을 추가하고 행 색상 등을 설정하고 싶습니다. ListView에서 가능한가요? 아니면 TableLayout이 필요합니까? –
글로벌 기준으로 모든 열 또는 모든 행에서 하나의 색을 얻을 수 있습니다 ... 예. list_layout.xml에서 변경을하면됩니다. 그러나 다른 색상을 가진 다른 행이 필요하다면 조정하기 위해 어댑터의'getView()'메소드를 오버라이드해야합니다. –
내가 제안한 변경 사항을 추가했습니다. 개 소식을 업데이트했습니다. 기존 레이아웃 "runtests.xml"을 사용하여 결과를 표시합니다. 이제 XML을 추가했습니다. 선형 레이아웃 대신 listView를 사용합니까? –