android - 如何从动态创建中查找编辑文本框和微调器 任何人都可以
问题描述
我无法在布局中找到微调器和编辑文本
代码如下它只在多次查找EditText
try {
int count = my_linear_layout1.getChildCount();
//EditText ed[] = new EditText[count];
for (int i = 1; i < count; i++) {
View row = my_linear_layout1.getChildAt(i);
row = my_linear_layout1.findFocus();
if(row instanceof EditText)
{
// you got the Edit Text if (v.getClass().equals(TextView.class))
EditText textOut = (EditText) row.findViewById(R.id.OBSpn);
String data = textOut.getText().toString();
}
else if(row instanceof Spinner)
{
// you got the Spinner
Spinner Spin = (Spinner) row.findViewById(R.id.SPNOBS);
String data1 = Spin.getSelectedItem().toString();
}
}
} catch (Exception e) {
e.printStackTrace();
}
解决方案
使用 ListView 代替 LinearLayout。按照这个文档。 https://developer.android.com/reference/android/widget/ListView
我的问题是为什么 ScrollView 不能是父布局,不需要相对布局。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/container"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ListView
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</ListView>
<!-- Add extra -->
</LinearLayout>
</ScrollView>
推荐阅读
- python - 为 GPflow 模型预计算张量流张量
- android - 在 Linux 主机上使用 dex2oat 编译 APK
- bash - awk + 打印匹配前后的行
- excel - 具有包含数组的自定义类型的 VBA 字典
- javascript - Angular:检测整个应用程序中的用户点击
- elasticsearch - ElasticSearch:设置 search_analyzer 时必须设置字段分析器
- html - 如何显示缩小的 html 画布
- list - 所有可能的组合将 n 个列表与每个列表的至少一个 elem 组合在一起
- html - Bootstrap 4自定义复选框与文本输入格式相同?
- python - IBM Cloud 功能 - 无法创建操作