我想从foreach循环中添加项目。我的问题是,无论添加多少,我都只能看到一个项目。我在下面用我的问题制作了一个示例代码。从我的布局开始。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:focusableInTouchMode="true">
<ScrollView android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:focusableInTouchMode="true">
<TextView
android:textSize="10pt"
android:id="@+id/HeaderLbl"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:textSize="7pt"
android:id="@+id/ErrorLbl"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#ffff0000"
/>
<Spinner
android:id="@+id/OrderSpinner"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
>
</Spinner>
<TextView
android:textSize="8pt"
android:id="@+id/OrderRef"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:textSize="7pt"
android:id="@+id/OrderDateTime"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:textSize="7pt"
android:id="@+id/OrderCustomer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:textSize="7pt"
android:id="@+id/OrderInnerComment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<Spinner
android:id="@+id/ArticleSpinner"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
>
</Spinner>
<ListView
android:id="@+id/OperationsListView"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
>
</ListView>
</LinearLayout>
</ScrollView>
</LinearLayout>
在这里,我模拟我的foreach循环添加项目。
ArrayAdapter CalculationAdapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1);
ListView OperationsListView = FindViewById<ListView>(Resource.Id.OperationsListView);
for (int i = 0; i < 3; i++)
{
CalculationAdapter.Add(i.ToString());
}
OperationsListView.Adapter = CalculationAdapter;
非常感谢帮助!谢谢。
编辑: 我认为scrollview就是问题所在。
<ScrollView android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
我删除它然后它工作:) 不明白为什么...... How can I put a ListView into a ScrollView without it collapsing? Mabye这可以帮助任何其他有相同问题的人
答案 0 :(得分:0)
使用它将适配器设置为listview
OperationsListView.setAdapter(CalculationAdapter);
这会将值设置为listview
我不确定是否ListView OperationsListView = FindViewById<ListView>(Resource.Id.OperationsListView);
是对的
试试这个
OperationsListView = (ListView) findViewById(your id );
答案 1 :(得分:0)
我认为你最后遗漏了notifyDataSetChanged();
。 CalculationAdapter.notifyDataSetChanged();