我正在尝试将数据库中的信息显示为复选框。现在它工作正常,但在屏幕上放置了一列复选框。我想要做的是把它分成2。
现在做什么:
item1
item2
item3
item4
item5
我想要什么:
item1 item2
item3 item4
item5
最好是新的 2 列列表大小均匀,每个占屏幕的 50%,即使分配的文本长度不同。
我搜索了很多,并尝试了 3 种不同的东西。还没有找到任何有效的东西。下面是我的代码(创建一列)。
private void listStudents()
{
st = (LinearLayout)findViewById(R.id.studTable);
ml = (RelativeLayout)findViewById(R.id.main);
ArrayList<ArrayList<String>> studentlst = new ArrayList<ArrayList<String>>();
studentlst = db.getAllStudentsRowsAsArrays();
final int sllen = studentlst.size();
final String student[][] = new String[sllen][3];
CheckBox cb[] = new CheckBox[sllen];
TextView pemail[] = new TextView[sllen];
int num = st.getChildCount();
if(num != 0) st.removeAllViews();
String tsl = sllen + "";
nos.setText(tsl);
for(int x=0; x < sllen; x++)
{
/************************
* student[x][case] *
* case options *
* 0 = id *
* 1 = name *
* 2 = email *
************************/
String curstudent = studentlst.get(x).toString();
student[x][0] = curstudent.substring(1,curstudent.indexOf(","));
student[x][1] = curstudent.substring(curstudent.indexOf(" ")+1,curstudent.lastIndexOf(","));
student[x][2] = curstudent.substring(curstudent.lastIndexOf(" ")+1, curstudent.length() - 1);
}
Arrays.sort(student, new Comparator<String[]>() {
@Override
public int compare(String[] entry1, String[] entry2) {
String name1 = entry1[1];
String name2 = entry2[1];
return name1.compareTo(name2);
}
});
for(int x=0;x<sllen;x++)
{
cb[x] = new CheckBox(this);
cb[x].setId(x+100);
cb[x].setText(student[x][1]);
pemail[x] = new TextView(this);
pemail[x].setText(student[x][2]);
pemail[x].setId(x+1000);
pemail[x].setVisibility(View.INVISIBLE);
st.addView(cb[x],x);
ml.addView(pemail[x],x);
}
}
XML 文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/lblmainselclass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="82dp"
android:layout_marginTop="7dp"
android:text="@string/lblmainselectclass" />
<Spinner
android:id="@+id/mainclassspinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/lblmainselclass" />
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:layout_below="@+id/lblmainselstudents"
android:layout_centerHorizontal="true" >
<LinearLayout
android:id="@+id/studTable"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>
<TextView
android:id="@+id/lblmainselstudents"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/mainclassspinner"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:text="@string/lblselectstud" />
<Button
android:id="@+id/btnsend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/btnlblsend" />
<Spinner
android:id="@+id/mainresponsespinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnsend"
android:layout_centerHorizontal="true"
android:layout_marginBottom="30dp" />
<TextView
android:id="@+id/mainnumofstudents"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="@string/invis"
android:visibility="invisible" />
<TextView
android:id="@+id/classselected"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="@string/invis"
android:visibility="invisible" />
<TextView
android:id="@+id/responseselected"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="@string/invis"
android:visibility="invisible" />
<TextView
android:id="@+id/numchecked"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="@string/invis"
android:visibility="invisible" />