滚动查看动态复选框不滚动



我正在尝试动态创建一个复选框列表,我需要这些复选框位于ScrollView中。我已经设法动态添加了复选框,但即使有很多复选框,它也不会滚动。这是滚动视图:

<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:id="@+id/payersLinearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
</LinearLayout>
</ScrollView>

这是动态添加复选框的代码:

// sets up the payee checkboxes
LinearLayout payersLinearLayout = (LinearLayout) findViewById(R.id.payersLinearLayout);
participants.add("Test 1");
participants.add("Test 2");
participants.add("Test 3");
participants.add("Test 4");
participants.add("Test 5");
participants.add("Test 6");
participants.add("Test 7");
participants.add("Test 8");
int participantsSize = participants.size();
for (int i = 0; i < participantsSize; i++) {
LinearLayout payerLinearLayout = new LinearLayout(this);
payerLinearLayout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));
payerLinearLayout.setOrientation(LinearLayout.HORIZONTAL);
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT,
1.0f
);
CheckBox checkBox = new CheckBox(this);
checkBox.setId(i);
checkBox.setText(participants.get(i));
checkBox.setLayoutParams(param);
EditText editText = new EditText(this);
editText.setText("0.00");
editText.setLayoutParams(param);
payerLinearLayout.addView(checkBox);
payerLinearLayout.addView(editText);
payersLinearLayout.addView(payerLinearLayout);
}

我不知道问题出在哪里,也不知道为什么它不会滚动。我不确定它是否相关,但ScrollView本身处于线性布局中,也处于线性布局,也处于应用程序栏布局中。有人能帮忙吗?任何帮助都将不胜感激!

对于其他遇到这个问题的人,我终于解决了。问题出在应用程序栏布局上。我试着用RecyclerView替换ScrollView,但它完全一样。滚动不起作用。当我删除应用程序栏布局时,它起了作用。看起来RecyclerViews在应用程序栏布局中不起作用。我希望这能帮助到外面的人!

最新更新