我有一个列表视图,每行包含一个textview和一个edittext。一世 列表视图下方还有一个按钮,我只想访问 listview的所有行的edittext小部件。有人能帮助我吗?
HexList布局:这是我的主列表视图,其中包含自定义行。在主列表视图下方,我有一个按钮"另存为"。单击按钮我想访问每行的edittext。我对用于获取edittext小部件的类感到困惑,即listview或listview的适配器。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/listViewHex1"
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_above="@+id/saveButton1"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" >
</ListView>
<Button
android:id="@+id/saveButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:text="@string/save" />
</RelativeLayout>
HexRow布局:这是我的listview行,包含textview和edittext。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/hexrowlayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/hexEditTextRow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="textShortMessage" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/hexTextViewRow"
android:layout_width="match_parent"
android:layout_height="30dp" />
</LinearLayout>
在主要活动中,我尝试访问每个和每行的编辑文本。
Button saveToFile = (Button) findViewById(R.id.saveButton1);
saveToFile.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
// Saving hexcode button names from edittext into vitaminslist
{
int size = aa.getCount();
for(int i = 0; i < size; i++){
//benefits.getChi
EditText e = (EditText) aa.getView(i, benefits, null);
HexCode he = vitaminsList.get(i);
he.setName(e.getText().toString());
}
}
}
});
答案 0 :(得分:2)
尝试类似的事情,你可能会回答上帝。
Button saveToFile = (Button) findViewById(R.id.saveButton1);
saveToFile.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
{
int size = myListView.getCount();
for(int i = 0; i < size; i++){
View view = myListView.getChildAt(i);
EditText e = (EditText) view.findViewById(R.id.hexEditTextRow);
HexCode he = vitaminsList.get(i);
he.setName(e.getText().toString());
}
}
}
});