android - 从其他 Activity 的列表中删除项目

标签 android listview button

如何从另一个 Activity 上的按钮中删除一个 ListActivity 中的项目,问题是,

我有这个 ListActivity:

public class ListaEventos extends ListActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    protected void onResume() {
        super.onRestart();
        republicar();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.lista_eventos, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.criar_evento:
                Intent criar = new Intent(this, CriarEvento.class);
                startActivity(criar);
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }

    public void republicar() {
        List<DadosEvento> eventos = MySingleton.getInstance().getEventos();
        setListAdapter(new ArrayAdapter<DadosEvento>(this, android.R.layout.simple_list_item_1, eventos));
    }

    @Override
    public void onListItemClick(ListView listView, View view, int position, long id) {

        DadosEvento clickNumber = MySingleton.getInstance().getEventos().get(position);

        Intent intent = new Intent(this, ExibirEvento.class);
        Bundle exibirEvento = new Bundle();
        exibirEvento.putString("exibirNome", clickNumber.getNome());
        exibirEvento.putString("exibirData", clickNumber.getData());
        exibirEvento.putString("exibirEnd", clickNumber.getEndereco());
        exibirEvento.putString("exibirTel", clickNumber.getTel());
        intent.putExtras(exibirEvento);
        startActivity(intent);
    }
}

其他 Activity :

public class ExibirEvento extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_exibir_evento);

        Intent intent = getIntent();
        Bundle exibirEvento = intent.getExtras();

        String exibirNome = exibirEvento.getString("exibirNome");
        String exibirData = exibirEvento.getString("exibirData");
        String exibirEnd = exibirEvento.getString("exibirEnd");
        String exibirTel = exibirEvento.getString("exibirTel");

        TextView exibir_nome = (TextView) findViewById(R.id.exibirevento_edittext_nome);
        exibir_nome.setText(exibirNome);

        TextView exibir_data = (TextView) findViewById(R.id.exibirevento_edittext_data);
        exibir_data.setText(exibirData);

        TextView exibir_end = (TextView) findViewById(R.id.exibirevento_edittext_end);
        exibir_end.setText(exibirEnd);

        TextView exibir_tel = (TextView) findViewById(R.id.exibirevento_edittext_tel);
        exibir_tel.setText(exibirTel);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.exibir_evento, menu);
        return true;
    }

    public void sairExibicao(View v) {
        finish();
    }
}

现在,在 ExibirEvento 上它向我显示了有关派对的信息,我需要一个按钮从列表中删除该项目。

最佳答案

好吧,您可以遵循几个场景。

  1. 使用 startActivityForResult 而不是 startActivity 然后覆盖 onActivityResult 方法并捕获适当的 requestCoderesult(例如 RESULT_OK)并删除当前项目和 notifyDataChanged adapter

  2. 使用 singelton 类,创建 newInstance,设置值,然后从 ExibirEvento

  3. 引用它
  4. 使用数据库,并利用ContentProviderLoader,只将条目的ID传递给ExibirEvento

我认为第 3 个选项是最好的选择。

关于android - 从其他 Activity 的列表中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22667058/

相关文章:

android - 如何管理删除 CursorAdapter 上的项目

java - 在选项卡 View 中交换 View 寻呼机时增加 Recyclerview 的项目

java - 为所有应用程序 ListView android添加点击功能

ios - 调用扩展函数 IOS Swift

android - 如何将指南针添加到 map View

java - 从 firebase 检索数据后需要反转 ListView

android - 如何在扩展列表 Activity 的 ListView 中使用微调器

java - Android ArrayList 到 ListView 用于搜索 Activity

javascript - 使用 JavaScript/jQuery 函数打开和关闭 HTML 功能

iphone - 我可以在 Xcode 4.6 中禁用约束吗?