在单击第二次时,如何禁用ListView行



我有一个列表视图,该视图在单击其项目时将数据发送到服务器。我想禁用我已发送到服务器的ListView的项目(行),以便用户无法再次将数据发送到服务器。请帮助我。

这是我的ListView Listner代码:

    obj = (ListView) findViewById(R.id.listView1);
    obj.setAdapter(arrayAdapter);
    obj.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {


            // TODO Auto-generated method stub
            int id_To_Search = arg2 + 1;
            Bundle dataBundle = new Bundle();
            dataBundle.putInt("Order_No", id_To_Search);
            Intent intent = new Intent(getApplicationContext(), OrderForm.class);
            intent.putExtras(dataBundle);
            startActivity(intent);

        }
    });

当我单击ListView项目时,将我带到下一个将数据发送到服务器的活动。我想要的是,当数据ID发送到服务器时,ListView项目在主要活动中变得禁用,因此用户将无法再次发送数据?

为您单击的视图设置标签。然后,当您第二次单击它时,请检查是否已经设置了

obj = (ListView) findViewById(R.id.listView1);
obj.setAdapter(arrayAdapter);
obj.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
       If(arg1.getTag().toString().equals("1")) return;
        // TODO Auto-generated method stub
        arg1.setTag("1").;
        int id_To_Search = arg2 + 1;
        Bundle dataBundle = new Bundle();
        dataBundle.putInt("Order_No", id_To_Search);
        Intent intent = new Intent(getApplicationContext(), OrderForm.class);
        intent.putExtras(dataBundle);
        startActivity(intent);

    }
});

最新更新