我在使用封闭方法时出错;“静态”;或者从android中的SonarLint中删除此设置
在android studio中,我使用我在使用封闭方法时出错;“静态”;或者从android中的SonarLint中删除此设置,android,static,static-methods,greendao,sonarlint,Android,Static,Static Methods,Greendao,Sonarlint,在android studio中,我使用Sonarint测试代码,我在活动中遇到了错误 将封闭方法设为“静态”或删除此集合 我使用了在onCreate方法中使用的静态变量 代码: 公共类BaseActivity扩展AppCompativity实现了Interactior、UserMapView、RecyclerItemClickListener{ 静态登录到listLogin; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(
Sonarint
测试代码,我在活动中遇到了错误
将封闭方法设为“静态”或删除此集合
我使用了在onCreate
方法中使用的静态变量
代码:
公共类BaseActivity扩展AppCompativity实现了Interactior、UserMapView、RecyclerItemClickListener{
静态登录到listLogin;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView=(recyclerView)findViewById(R.id.recycler\u视图);
progressBar=(progressBar)findViewById(R.id.progress\u bar);
loginPresenter=new RecyclerviewPresenter();
loginPresenter.attachedView(本文件);
setupRecyclerView();
listLogin=DataProvider.getLoginDao(此);
}
公共列表createCollectionPictures(){
列出图片;
pictures=listLogin.loadAll();
返回图片;
}
注意:如果我不声明static,我将无法获得输出(变量
listlogin应该为null),但如何解决此错误
提前感谢。我认为您应该为该静态变量创建一个getter方法,并在需要该静态变量时使用该getter方法。这不会产生问题,也会按照预期工作。我希望这会对您有所帮助。我认为您应该为该静态变量创建一个getter方法并使用它需要静态变量时使用getter方法。这不会产生问题,而且会按照预期工作。我希望这会对您有所帮助
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;
}