Мне нужно, чтобы кнопка была деактивирована и должна быть активирована, когда она записывается в текст редактирования, кроме того, когда я нажимаю на кнопку, она отправляет мне сообщение и стирается, введенное в текст редактирования удаляется, это должно выполняться для каждого элемента списка, который я пробовал, приложение запускается, но не выполняет ничего из того, что я хочу, я сделал это фрагментом, пожалуйста, помогите мне.
HomeFragment
public class HomeFragment extends Fragment implements View.OnClickListener{
Button entry;
EditText reply;
int[] imagen = new int[]{
R.drawable.gotas,R.drawable.hojas,R.drawable.leon
};
String[] nombreimagen = new String[]{
"drop","leaves","animal"
};
String[] pregunta = new String[] {
"how many drops have fallen?","how many sheets are there?","what animal is?"
};
String[] numreto = new String[]{
"challenge 1","challenge 2","challenge 3"
};
String[] descripcion = new String[]{
"write a number","write a number","write a number"
};
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable final ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_home, container, false);
List<HashMap<String, String>> aList = new ArrayList<>();
for (int i = 0; i<3 ; i++) {
HashMap<String, String > hm = new HashMap<>();
hm.put("ima", Integer.toString(imagen[i]));
hm.put("nombreima", nombreimagen[i]);
hm.put("pregunta", pregunta[i]);
hm.put("numreto", numreto[i]);
hm.put("descri", descripcion[i]);
aList.add(hm);
}
String[] from = {"ima", "nameima", "pregunta", "numreto", "descri"};
int[] to = {R.id.imagret, R.id.nameima, R.id.pregun, R.id.numreto, R.id.descrp};
SimpleAdapter adapter = new SimpleAdapter(view.getContext(), aList, R.layout.item2, from, to);
ListView listView = (ListView) view.findViewById(R.id.lv);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
int viewId = view.getId();
switch (viewId){
case R.id.ingre:
//Boton Detalles
((ListView) container).performItemClick(view,i,0);
entry.setOnClickListener((View.OnClickListener) reply);
entry.setEnabled(false);
Toast.makeText(getContext(),"its reply" + reply + "is entry",Toast.LENGTH_LONG).show();
case R.id.respuesta:
reply.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
if(charSequence.toString().equals("")){
entry.setEnabled(false);
}
else{
entry.setEnabled(true);
}
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable editable) {
if (editable.toString().equals("")){
entry.setEnabled(false);
}
else {
entry.setEnabled(true);
}
}
});
break;
}
}
});
return view;
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.ingre:{
reply.setText("");
break;
}
}
}
}
layout
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/lv"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
item2
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/imagret"
android:layout_width="190dp"
android:layout_height="150dp" />
<TextView
android:id="@+id/nameima"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_weight="1"
android:gravity="center"
android:text="TextView"
android:textColor="#000000"
android:textSize="30sp" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/pregun"
android:layout_width="215dp"
android:layout_height="190dp"
android:textColor="#0091EA"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/numreto"
android:layout_width="match_parent"
android:layout_height="60dp"
android:gravity="center"
android:textColor="#FF0000"
android:textSize="38sp" />
<TextView
android:id="@+id/descrp"
android:layout_width="match_parent"
android:layout_height="25dp"
android:gravity="end"
android:textColor="#FF0000"
android:textSize="14sp" />
<EditText
android:id="@+id/respuesta"
android:layout_width="match_parent"
android:layout_height="50dp"
android:enabled="true"
android:gravity="center"
android:hint="reply"
android:inputType="number"
android:textColorLink="#0037CE"
android:textSize="24sp" />
<Button
android:id="@+id/ingre"
android:layout_width="match_parent"
android:layout_height="55dp"
android:text="entry"
android:textColor="#FFFFFF"
android:textSize="24sp" />
</LinearLayout>
</LinearLayout>
это мое приложение, кнопка должна запускаться (отключена), а при вводе текста редактирования она должна (быть включена), после нажатия кнопки кнопку, вы должны удалить то, что у вас есть в тексте редактирования, это должно выполняться в каждом элементе, после этого он сохранит ответы в базе данных для сравнения и окончательного результата (но это позже, только если вы можете помочь мне с это тоже, я был бы признателен) на данный момент мне нужны только кнопки и текст редактирования, пожалуйста
[введите описание изображения здесь] [1] [1]: https://i.stack.imgur.com/8Aab7.png