我得到错误使封闭方法“静态”或从Android中的SonarLint中删除此设置

时间:2016-08-30 09:54:04

标签: android static static-methods greendao sonarlint

在android studio中我使用SonarLint来测试代码,我的活动中出现了错误

  

使封闭方法“静态”或删除此集

我使用了onCreate方法中使用的静态变量。

代码:

 public class BaseActivity extends AppCompatActivity implements Interactor, UserMapView, RecyclerItemClickListener {
    static LoginDao listLogin;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
        progressBar = (ProgressBar) findViewById(R.id.progress_bar);
        loginPresenter = new RecyclerviewPresenter();
        loginPresenter.attachedView(this);
        setupRecyclerView();
        listLogin = DataProvider.getLoginDao(this);
    }
    public List < Login > createCollectionPictures() {
        List < Login > pictures;
        pictures = listLogin.loadAll();
        return pictures;
    }
  

注意:如果我没有声明静态,我无法获得输出(变量   listlogin应该为null)但是如何解决这个错误。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我认为您应该为该静态变量创建一个getter方法,并在需要静态变量时使用该getter方法。这不会产生问题,也不会按预期工作。我希望这对您有所帮助。