Как обнаружить щелчок на флажке в ListView, когда для его фокуса установлено значение false - PullRequest
0 голосов
/ 04 октября 2018

Я работаю над приложением, в котором мне нужно создать список.Список содержит 2 textViews и 1 флажок.Список должен удалить строку, которая обнаруживает щелчок по нему.Но щелчок будет обнаружен только в том случае, если для фокуса флажка установлено значение false.Но целью приложения также является удаление строки, когда установлен соответствующий флажок.Но onItemClickListener не обнаруживает щелчок на флажке.

public class MainActivity extends AppCompatActivity {
private static final String TAG = "MainActivity";
ArrayList<ListData> ListData = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Log.d(TAG, "onCreate: Starting");
    final ListDataAdapter adapter = new ListDataAdapter(this ,R.layout.list_layout,ListData );
    Button button= (Button) findViewById(R.id.Button);
    CheckBox checkBox =(CheckBox)findViewById(R.id.checkbox);
    final ListView listView = (ListView)findViewById(R.id.ListView);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            TextView textView1 = (TextView) findViewById(R.id.TextView1);
            TextView textView2 = (TextView) findViewById(R.id.TextView2);
            EditText editText1 = (EditText) findViewById(R.id.EditText1);
            EditText editText2 = (EditText) findViewById(R.id.EditText2);
            if (editText1.getText() != null && editText2!=null) {
                String title = editText1.getText().toString();
                String description = editText2.getText().toString();
                textView1.setText(title);
                textView2.setText(description);
                ListData data = new ListData(title, description);
                ListData.add(data);
                saveArrayList();
                Log.i(TAG, "display:" + ListData);
                adapter.notifyDataSetChanged();
                editText1.setText("");
                editText2.setText("");
                listView.setAdapter(adapter);
            }


        }
    });

    listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
        @Override
        public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
            Log.d(TAG, "onItemClick: tapped");
            ListData.remove(i);
            saveArrayList();
            adapter.notifyDataSetChanged();
            listView.setAdapter(adapter);
            return true;
        }
    });

}

}

Файл XML

<CheckBox
    android:id="@+id/checkbox"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="90"
    android:focusable="false"
    android:focusedByDefault="false" />

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...