当前位置: 首页 > 面试题库 >

Android:移除项目(ListView)

邵亦
2023-03-14
问题内容

我想从中删除一个项目ListView,但是我不知道该怎么做。

这是我的代码…

public void FLYNOTE_refresh() {
    int i;
    SharedPreferences Pref = getSharedPreferences("nnote", MODE_WORLD_READABLE); //созаётся файл настроек "nnote" и туда барыжиться вся хня
    key = Pref.getInt("number", 0); 
    key++;
    String lv_arr[] = new String[key];

    for (i = 0; i < key; i++) {
         lv_arr[i] = Pref.getString("n" + i, "none");           
    }

    textView1.setText(String.valueOf(key));

    listView1.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , lv_arr));
    listView1.setTextFilterEnabled(true);
}

我想删除一个项目0 id,指导我执行此操作。


问题答案:

如果您不想显示项目0,只需调整其大小lv_arr并更改for循环即可:

public void FLYNOTE_refresh() {
    int i;
    SharedPreferences Pref = getSharedPreferences("nnote", MODE_WORLD_READABLE); //созаётся файл настроек "nnote" и туда барыжиться вся хня
    key = Pref.getInt("number", 0); 
    String lv_arr[] = new String[key]; // One item smaller without "n0"

    key++;
    for (i = 1; i < key; i++) {
        // Skip "n0" like this
        lv_arr[i - 1] = Pref.getString("n" + i, "none");           
    }

    textView1.setText(String.valueOf(key));

    listView1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, lv_arr));
    listView1.setTextFilterEnabled(true);
}

如果您想在应用程序运行时删除项目,建议您使用a List<String>而不是a String[]

public void FLYNOTE_refresh() 
{
    int i;
    SharedPreferences Pref = getSharedPreferences("nnote", MODE_WORLD_READABLE); //созаётся файл настроек "nnote" и туда барыжиться вся хня
    key = Pref.getInt("number", 0); 
    key++;
    lv_arr = new ArrayList<String>();

    for (i = 1; i < key; i++) {
        lv_arr.add(Pref.getString("n" + i, "none"));           
    }

    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, lv_arr);
    listView1.setAdapter(adapter);

    listView1.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            lv_arr.remove(position);
            adapter.notifyDataSetChanged();
        }
    });
}


 类似资料:
  • 迁移数据库ORM层 迁移模板Blade 迁移分页 迁移验证器 迁移Cache

  • 数据库 模板类 验证器 缓存类

  • 这些文件不在AndriodStudioProjects文件夹中,因为我只导入了未移动的项目.... 基本上,我想完成的是,从Android Studio中的最近项目列表中删除该文件,从Eclipse中重新导出该文件,然后将一个正在工作的项目导入到Android Studio中。

  • 我正在将我的代码从使用< code>androidx.viewpager更新为< code>androidx.viewpager2。我正在翻阅一个不确定数量的片段,这些片段显示了从数据库中检索到的数据记录。加载视图分页器并对我的数据进行分页运行得很好,但是我在删除项目和更新分页器适配器时遇到了一些问题。我想通过调用我的适配器上的< code>removeItem()方法(参见下面的代码)在任何给定

  • 我是Android Studio的新手。需要将一个旧项目迁移到Android Studio 首先,我收到了这个错误: Android插件与Android渐变插件不兼容。请使用“注释处理器”。配置“编译”已过时,已替换为“实现”和“api”。它将于2018年底删除。欲了解更多信息... 然后,当我进行更改并替换我需要的内容时,我收到了这个错误: 键盘|屏幕大小|方向| '与不兼容...

  • 前言 项目初始化 Composer集成 从ThinkPHP迁移项目 从Laravel迁移项目