无法将删除线添加到onCreate中的ListView项

时间:2019-08-21 02:19:32

标签: java android

我正在创建一个任务列表应用。

我有两个arrayList:taskArray和taskArray2。 taskArray包含以下任务:"milk", "bread"。 taskArray2包含任务的状态:"true", "false"。 “ true”表示相应的任务应具有删除线,表示已完成。 “ false”表示相反的意思。在此示例中,“牛奶”应具有删除线,而“面包”则不应具有删除线。

我还有一个ListView任务,其中显示了任务和删除线。

由于某些原因,以下代码显示了任务,但未显示必要的删除线。

public class MainActivity extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemClickListener {
    public View v;
    public ListView tasks;
    public ArrayList<String> taskArray;
    public ArrayAdapter<String> adapter;
    public ArrayList<String> taskArray2;
    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tasks = findViewById(R.id.tasks);
        taskArray = FileHelper.readData(this);
        taskArray2 = FileHelper2.readData(this);
        adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, taskArray);
        tasks.setAdapter(adapter);
        tasks.setOnItemClickListener(this);


        }
        for(int i = 0;i<taskArray2.size();i++){
            if (taskArray2.get(i).equals("true")) {
                View v = adapter.getView(i,null,tasks);
                TextView text = (TextView) v;
                text.setPaintFlags(text.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
            }
        }
    }

我已经进行了广泛的研究以尝试解决此问题,包括使用onItemClick,重新启动活动以及使用Log.d()来确保for循环正在运行。但是,上述问题仍然存在。任何帮助将不胜感激。

0 个答案:

没有答案