显示正在加载活动直到主要活动已满加载
以下是在onCreate方法完全执行后要加载的主要活动的代码。
Refered This for closing one activity from another显示正在加载活动直到主要活动已满加载
public class DictionarySscWords extends AppCompatActivity implements View.OnClickListener, TextToSpeech.OnInitListener
{
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
context = this;
Intent myIntent = new Intent(DictionarySscWords.this,LoadingIt.class);
startActivity(myIntent);
setContentView(R.layout.activity_main);
//all this activity work
LoadingIt.fa.finish(); //close Loading activity
}
}
现在,这里是我的loadingIt活动的代码
public class LoadingIt extends AppCompatActivity {
Context context;
public static LoadingIt fa;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_loading_it);
context=this;
fa = this;
ProgressDialog dialog=new ProgressDialog(context);
dialog.setMessage("Loading Please wait!!");
dialog.setCancelable(false);
dialog.setInverseBackgroundForced(false);
dialog.show();
}
}
问题是LoadingIt活动永远不会结束,并且应用程序被套牢加载屏幕上我要完成thisactivity作为以前的活力onCreate方法全面执行
谢谢
我觉得你的解决方案并不是最佳实践。以下是我会做:
声明
LoadingIt
活性作为启动活动在
onCreate
方法,在后台加载所需要的资源(或者与一个AsyncTask
或者例如IntentService
)一旦装载完成,完成
LoadingIt
活性并显示DictionarySscWords
活性
如果您发布加载逻辑,我可以提供一个示例实现。
DictionarySscWords不是启动器类 – phpdroid
“启动器类”是什么意思,“DictionarySscWords”是一个活动,对不对?因此,您可以在加载完成后使用意向来启动它,并传递加载的数据。 –
您可以在LoadingIt类的onCreate()使用线程
public class LoadingIt extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar().hide();
setContentView(R.layout.activity_loading_it);
Thread loadingThread = new Thread() {
@Override
public void run() {
try {
super.run();
sleep(2000);
} catch (Exception e) {
} finally {
Intent main = new Intent(LoadingIt.this,MainActivity.class);
startActivity(main);
finish();
}
}
};
loadingThread.start();
}
你有重写了'onFinish()'的'LoadingIt'活动? – hsm59
此外 - 您正在持有对活动的静态引用。这永远不会消失,除非你从某个地方手动清除 - >你正在创建一个内存泄漏! - 从你添加的链接。 – hsm59
您能告诉我们您在DictionarySscWords活动中执行的任务吗? –