视图完全呈现后如何进行回调?
视图完全呈现后如何进行回调?
我正在尝试调用一个方法,该方法采用父视图的屏幕截图。如果我在方法中编写该代码,则应用会由于空指针而崩溃(因为不会呈现任何视图)。现在,我实现的临时解决方案是在调用该方法之前延迟1秒。但是,我正在寻找一个更强大的解决方案来解决这个问题。onCreate()
任何建议和帮助赞赏。谢谢:)
视图完全呈现后如何进行回调?
我正在尝试调用一个方法,该方法采用父视图的屏幕截图。如果我在方法中编写该代码,则应用会由于空指针而崩溃(因为不会呈现任何视图)。现在,我实现的临时解决方案是在调用该方法之前延迟1秒。但是,我正在寻找一个更强大的解决方案来解决这个问题。onCreate()
任何建议和帮助赞赏。谢谢:)
试试这个逻辑...始终在视图获得焦点或渲染或失去焦点后调用
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    doWhateverAfterScreenViewIsRendered();
}
我现在有一个更好的选择:)这实际上在渲染布局后给出了回调
private class LoadActivity extends AsyncTask<String, Void, String> {
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        mainMethod();
    }
    @Override
    protected void onPostExecute(String result) {
        super.onPostExecute(result);
        takeScreenShot(1);
    }
    @Override
    protected String doInBackground(String... params) {
        return null;
    };
}
我创建了上面的类,然后在onCreate()中调用此方法执行
LoadActivity loadactivity= new LoadActivity();
loadactivity.execute();
 
				    		 
				    		 
				    		 
				    		