从活动的适配器设置ImageView可见/不可见

时间:2014-02-23 20:42:03

标签: android listview imageview

我在imageview上有一个listview活动(列表视图的背景类型)。当活动适配器的arraylist为空时,我想将imageview设置为可见,当我的arraylist上有一个或多个对象时,我想将imageview设置为不可见。

每当我更改arraylist时,我都会从适配器调用它:

((MainActivity)context).checkForLogo();

和MainActivity上的checkForLogo方法:

public void checkForLogo()
{
    ImageView logoView = (ImageView)findViewById(R.id.imageViewLogo);
    if (adapter.getCount() == 0)
        logoView.setVisibility(View.VISIBLE);

    else
        logoView.setVisibility(View.INVISIBLE);
}

我收到了NullPointerException。当我直接从活动设置可见性时,它可以工作(例如来自onCreate)。但是这对我的问题不起作用,因为每次修改适配器的arraylist都需要这样做。

1 个答案:

答案 0 :(得分:1)

尝试声明您的logoView全局并在onCreate

中初始化它