gpt4 book ai didi

java - 方法对 SwipeRefreshLayout 没有影响

转载 作者:行者123 更新时间:2023-12-02 13:41:18 25 4
gpt4 key购买 nike

我在 SwipeRefreshLayout 上使用的每个方法都不会对其产生影响。我对 Java 还很陌生,所以这可能就是我定义变量的方式。

这是我的 onCreate():

 public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
SharedPreferences pref = getSharedPreferences("application_settings", MODE_PRIVATE);
Boolean darkTheme = (pref.getBoolean("DarkTheme", false));
if(darkTheme == false){
setTheme(R.style.AppTheme);
}
else{
setTheme(R.style.DarkAppTheme);
}
setContentView(R.layout.activity_main);
.
.
.
final SwipeRefreshLayout test = (SwipeRefreshLayout) findViewById(R.id.swiperefresh);
if (darkTheme == true) {
test.setColorSchemeResources(R.color.grey_check);
}
else{
test.setColorSchemeResources(R.color.colorPrimary);
}
test.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {

@Override
public void onRefresh() {
test.setRefreshing(true);
OnSwipe();
}
});
}

这是我的 OnSwipe() 方法:

public void OnSwipe(){
mRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swiperefresh);
.
. // Some data processing
.
mRefreshLayout.setRefreshing(false);

每当我使用一种方法来影响其状态时,除了显示图标之外,什么也没有发生。它不会停止显示刷新图标。

最佳答案

编辑:我 5 分钟前快速阅读了您的问题,我编辑了答案:

您应该将其设置为全局变量:

SwipeRefreshLayout test;

然后在onCreate()中,这样设置:

test = (SwipeRefreshLayout) findViewById(R.id.swiperefresh);

完成这两个步骤后,您可以像这样使用它:

test.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
test.setRefreshing(true);
OnSwipe();
}
});

和 onSwipe():

public void OnSwipe(){
.
. // Some data processing
.
test.setRefreshing(false);
}

关于java - 方法对 SwipeRefreshLayout 没有影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42728229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com