使用asynctask加载listView



我有以下情况要解决:我想在向用户显示Splash屏幕(SplashScreenActivity.java(时填充我的ListView(mainActivity.java(。我想使用asynctask执行此操作,但在这种情况下我不知道如何使用它:

splashscreen.java

public class SplashScreenActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash_screen);

    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            Intent intent = new Intent(getApplicationContext(), MainActivity.class);
            startActivity(intent);

        }
    }, 1500);
}

mainActivity.java只是一个ListView,它使用JSON显示数据。

不要听此评论。

您需要在SplashActivity之前打开MainActivity,在MainActivity中,您需要从服务器中获取数据并加载列表,而它在获取时,您打开SplashActivity并调用您使用的相同的PostDelayed方法呼叫finish();,它将返回到MainActivity,希望加载。

请注意,您假设用户的Internet连接足够快,可以将数据加载到1500 miliseconds中,这种情况的理想是使用基于事件的应用程序,请寻找EventBus来实现这一目标。

最新更新